Hacker Newsnew | past | comments | ask | show | jobs | submit | btrettel's commentslogin

Location: United States (Open to any US location)

Remote: Yes, open to remote, hybrid, or in office

Willing to relocate: Yes

Technologies: Fortran, Python (Matplotlib, Numpy, Pandas, Scipy), OpenMP, Git/GitHub, Linux, Bash, others...

Résumé/CV: Available on request

Email: 7b8ci3kl@trettel.us

GitHub: https://github.com/btrettel

Personal website: http://trettel.us/

I'm Ben Trettel, an experienced mechanical engineer with a PhD, specializing in computational fluid dynamics, design optimization, and verification & validation of computer simulations. Also, I am knowledgeable about patent law from time spent at the USPTO as a patent examiner.

I am particularly interested in opportunities to build cutting-edge physical products where computational simulation and design optimization are key.


Nice work. I made a similar (but much less capable) Python script [1] for my own use before and I can say that a tool like this is useful to keep the docs in sync with the code.

My script only detects whether a checksum for a segment of code doesn't match, using directives placed in the code (not a separate file as you've done). For example:

    #tripwire$ begin 094359D3 Update docs section blah if necessary.
    [...]
    #tripwire$ end
Also, my script knows nothing about pull requests and is basically a linter. So it's definitely not as capable.

[1] https://github.com/btrettel/flt/blob/main/py/tripwire.py

***

Edit: I just checked my notes. I might have got the idea for my script from this earlier Hacker News comment: https://news.ycombinator.com/item?id=25423514


This is really cool, had no idea someone had solved a similar problem this way. The checksum idea is genius!!

Where's the report referred to here? I'm doing Google searches including `site:morganstanley.com` for a bunch of quotes in this article and I can't find any single report that contains all of what's mentioned. I couldn't find anything by browsing their website either. I'm wondering if a lot of this is AI hallucination.

A directory hierarchy works well for me. I've described my setup online before:

https://academia.stackexchange.com/a/173314/31143

https://www.reddit.com/r/datacurator/comments/p75xlu/how_i_o...

I don't read everything I have from start to finish. A lot of this is for future reference.

Since that StackExchange post, I'm now up to about 36.6K PDF files in 4.4K directories, with 14.5K symlinks so I can put files in multiple directories.

I also have a separate version controlled repo with notes a bunch of subjects. I'm planning to eventually merge my PDF hierarchy and the notes to have a unified system. It's going to have to be done in stages.


How many GB is your PDF collection? Have you considered sharing it more widely?

I know about Sci-Hub, Anna's Archive, etc., but I'm not so interested in a giant landfill containing all papers ever written. I'm much more interested in a curated collection of useful papers.


The root directory of the archive is 142 GB large. It's not only PDFs, but mostly PDFs. It includes many things that were never online and some things that were online at one point but are not online any longer.

For copyright reasons I can not share the entire thing as-is. I have plans to share most notes in there and bibliographic data for most directories. Doing so would be a major project in itself as this was never designed for that. I have some information I would prefer to keep private in there that's going to have to be filtered out, and I would prefer to clean some of it up to be in a more "presentable" state.

As for how useful you'd find it, I think that depends entirely on the overlap between my interests and yours.

You might be interested in this project of mine: https://github.com/btrettel/specialized-bibs


> As for how useful you'd find it, I think that depends entirely on the overlap between my interests and yours.

If that specialized-bibs repo is any indication, there seems to be reasonable overlap.

> For copyright reasons I can not share the entire thing as-is.

Of course. But if you'd like to store a non-encrypted backup copy on my system, I would be happy to offer my data storage services free of charge.

Alternatively: I'm training an LLM and it's transformative fair use.

My email is in my profile.

> I have some information I would prefer to keep private in there that's going to have to be filtered out, and I would prefer to clean some of it up to be in a more "presentable" state.

Totally understandable. If you ever get it into an acceptable state, please shoot me an email and I'll be happy to help out logistically.


That’s an impressive and thoughtfully structured system, especially at that scale. The use of symlinks and a separate version-controlled notes repository makes a lot of sense for long-term archival.

I’m curious — when working with such a large collection, how do you typically rediscover material or connect related ideas across different parts of the hierarchy? Do you rely primarily on directory structure, full-text search, or your notes as the main index?

And as you move toward merging the PDFs and notes into a unified system, do you see the notes becoming the central navigation layer, or will the directory structure remain primary?


It's mostly navigating the PDF directories or notes repository, full-text search of my notes, or (less frequently) searching Zotero for bibliographic data. I don't use tagging for this and I'll address full-text search of the documents in a bit. I can't say that either direct navigation or text search of the notes is dominant as I do a lot of both. Having multiple ways to find information is good for redundancy as if one way fails, you can try another. So I don't think the balanced approach I have will change in the future.

For navigating the directories, I have a Python script called cdref that will search the directory names, which has proved to be very useful. If there's one match, it'll go directly to that directory, and if there are multiple, a TUI will pop up and allow me to select the directory I want.

I haven't found full-text search of the documents themselves to be particularly useful because terminology varies, frequently what I'm looking for isn't in the text (could be a figure, for instance), and probably thousands of my documents haven't been OCRed. I think that relying too heavily on full-text search of the documents assumes that other people will organize information in a way useful to me, which isn't realistic [1]. Full-text search of the documents is a part of my system, still, but it's mostly used to find things to put in the directories or notes so that I can easily find the documents again without having to remember the right keywords. (Though I also often keep track of useful keywords.)

Often I won't remember where I keep some things or even if I have a directory or note on something at all. So I might accidentally create a redundant directory or note. But frequently I later realize that and use it as an opportunity to increase the connectivity of my directories and notes through symlinks. Then if I go to the "wrong" place, a symlink will send me where I should go. And if something pops into my head as related, I add a symlink or a note in the README file for a particular directory. (The README files in the directories are separate from the version controlled notes but will eventually merge, as I indicated.) Over the years, I've accumulated a lot of connections like this.

With all of this said, I think the important thing is to find a system that works for you that you can slowly scale over time. It doesn't need to look like my system. I've iteratively developed a system that works for me over 10+ years at this point. The scale is easy if you have a system you contribute a bit to on a regular basis over a long period of time.

[1] I've been also looking into having a large local bibliographic database to in part as an alternative to online scientific search engines like Google Scholar because I don't want to assume such services will always be available.


I'm reminded of something I read recently about disclosure of AI use in scientific papers [1]:

> Authors should be asked to indicate categories of AI use (e.g., literature discovery, data analysis, code generation, language editing), not narrate workflows or share prompts. This standardization reduces ambiguity, minimizes burden, and creates consistent signals for editors without inviting overinterpretation. Crucially, such declarations should be routine and neutral, not framed as exceptional or suspicious.

I think that sharing at least some of the prompts is a reasonable thing to do/require. I log every prompt to a LLM that I make. Still, I think this is a discussion worth having.

[1] https://scholarlykitchen.sspnet.org/2026/02/03/why-authors-a...


This is totally infeasible.

If I have a vibe coded project with 175k lines of python, there would be genuinely thousands and thousands of prompts to hundreds of agents, some fed into one another.

Whats the worth of digging through that? What do you learn? How would you know that I shared all of them?


> I log every prompt to a LLM that I make.

How many do you have in the log total?


I have a daily journal where I put every online post I make. I include anything I send to a LLM on my own time in there. (I have a separate work log on their computer, though I don't log my work prompts.) Likely I miss a few posts/prompts, but this should have the vast majority.

A few caveats: I'm not a heavy LLM user (this is probably what you're getting at) and the following is a low estimate. Often, I'll save the URL only for the first prompt and just put all subsequent prompts under that one URL.

Anyhow, running a simple grep command suggests that I have at least 82 prompts saved.

In my view, it would be better to organize saved prompts by project. This system was not set up with prompt disclosure in mind, so getting prompts for any particular project would be annoying. The point is more to keep track of what I'm thinking of at a point in time.

Right now, I don't think there are tools to properly "share the prompts" at the scale you mentioned in your other comment, but I think we will have those tools in the future. This is a real and tractable problem.

> Whats the worth of digging through that? What do you learn? How would you know that I shared all of them?

The same questions could be asked for the source code of any large scale project. The answers to the first two are going to depend on the project. I've learned quite a bit from looking at source code, personally, and I'm sure I could learn a lot from looking at prompts. As for the third question, there's no guarantee.


I can't reply to the other comment, but here goes:

This is one (1) conversation: https://chatgpt.com/share/69991d7e-87fc-8002-8c0e-2b38ed6673...

It has 9 "prompts" On just the issue of path re-writing, that's probably one of a dozen conversations, NOT INCLUDING prompts fed into an LLM that existed to strip spaces and newlines caused by copying things out of a TUI.

It's ok for things to be different than they used to be. It's ok for "prompts" to have been a meaningful unit of analysis 2 years ago but pointless today.


No the same question CANNOT be asked of source code because it can execute.

You might as well ask for a record of the conversations between two engineers while code was being written. That's what the chat is. I have a pre-pre-alpha project which already has potentially hundreds of "prompts"--really turns in continuing conversations. Some of them with 1 kind of embedded agent, some with another. Some with agents on the web with no project access.

Sometimes I would have conversations about plans that I drop. do I include those, if no code came out of them but my perspective changed or the agent's context changed so that later work was possible?

I don't mean to be dismissive, but maybe you don't have the necessary perspective to understand what you're asking for.


> maybe you don't have the necessary perspective to understand what you're asking for

Please don't cross into personal attack. You're making fine points, and that's enough.

https://news.ycombinator.com/newsguidelines.html

Btw, I think this is a particularly good point: "You might as well ask for a record of the conversations between two engineers while code was being written. That's what the chat is."

That's a good reframing. I can see why it might be impractical to share all of that, hard to make sense of as a reader, and too onerous to demand of submitters.

Since you have experience in this area, I'd like to hear your view on what we could reasonably require submitters to share, given that the flood of generated Github repos is creating a lot of low-quality submissions that don't gratify curiosity and thus don't fit the spirit of either Show HN or HN in general.

Some people would say "just ban them", but I'd rather find a way to adapt to this wave, since it is the largest technical development in a long time, and the price of opposing it is obsolescence.


"maybe you don't have the necessary perspective to understand what you're asking for"

this is in no way a personal attack. It's just a statement that's true. I didn't imply anything about them or their character or limitations, but they might not have the necessary perspective if that's the question they are asking.

I think it's critically important people figure out what they want to learn from what's being shared.

What do you need from submitters here? Even setting aside the burden of supplying it, what do you hope to learn?


> I think it's critically important people figure out what they want to learn from what's being shared.

> What do you need from submitters here? Even setting aside the burden of supplying it, what do you hope to learn?

I appreciate your comments on this - they are the most interesting responses I've seen so far about this question (so I hope the meta stuff doesn't get too much in the way).

The hope is to make the submissions of AI-generated Show HNs more interesting than they are when someone submits just a repo with generated code and a generated README.

The question is what could, at least in principle, be supplied that could have this desired effect.


(I thought I'd fork my reply to keep the meta stuff separate from the interesting stuff)

I believe you that it wasn't your intention, but when you address someone in the second person while commenting negatively on their perspective and understanding, it's going to land with a lot of readers (as it did with me) as personally pejorative. It's common for commenters (me too of course) not to perceive the provocations in their own posts, while being extra sensitive to the provocations in others' posts. If the skew is 10x both ways, that's quite a combination. It's necessary to remember and compensate for the skew, a la "objects in the mirror are closer than they appear".

Edit: total coincidence but I just noticed https://news.ycombinator.com/item?id=47115097 and made a similar reply there. I thought you might find this amusing, as I did.


> maybe you don't have the necessary perspective to understand what you're asking for.

I disagree. Thinking about this more, I can give an example from my time working as a patent examiner at the USPTO. We were required to include detailed search logs, which were primarily autogenerated using the USPTO's internal search tools. Basically, every query I made was listed. Often this was hundreds of queries for a particular application. You could also add manual entries. Looking at other examiners' search logs was absolutely useful to learn good queries, and I believe primary examiners checked the search logs to evaluate the quality of the search before posting office actions (primary examiners had to review the work of junior examiners like myself). With the right tools, this is useful and not burdensome, I think. Like prompts, this doesn't include the full story (the search results are obviously important too but excluded from the logs), but that doesn't stop the search logs from being useful.

> You might as well ask for a record of the conversations between two engineers while code was being written.

No, that's not typically logged, so it would be very burdensome. LLM prompts and responses, if not automatically logged, can easily be automatically logged.


> LLM prompts and responses, if not automatically logged, can easily be automatically logged.

What will you do with what you’ve logged? Where is “the prompt” when the chat is a chat? What prompt “made” the software?

If you’re assuming that it is prompt > generation > release, that’s not a correct model at all. The model is *much* closer to conversations between engineers which you’ve indicated would be burdensome to log and noisy to review.


> What will you do with what you’ve logged?

Could be a wide variety of things. I'd be interested in how rigorously a software was developed, or if I can learn any prompting tricks.

> Where is “the prompt” when the chat is a chat?

> The model is much closer to conversations between engineers which you’ve indicated would be burdensome to log and noisy to review.

I disagree. Yes, prompts build on responses to past prompts, and prompts alone are not the full story. But exactly the same thing is true at the USPTO if you replace "prompts" with "search queries" and no one is claiming that their autogenerated search logs are burdensome.

Also, the burden in actual conversations would come from the fact that such conversations are often not recorded in the first place. And now that I think about it, some organizations do record many meetings, so it might be easier than I'm thinking.

> What prompt “made” the software?

All of them.


This was interesting as I face a lot of issues maintaining my own notes accumulated over the past 15 or so years. The approach discussed might work great for the OP, but I'm skeptical this would work for me. I've found a lot of value in the "boring" maintenance tasks. Thinking about where to place something has caused me to make exactly the sort of connections the OP wrote about wanting to find. I work with a combination of a directory hierarchy, text search, and links (symlinks, URLs, bibliographic citations) which serve the same purpose as the tags and links the OP discussed. Links are how I express a lot of connections, in fact. So I don't see the organizing as some sort of non-core operation that's "labor" and not "thinking". For me, it's both.


Location: United States (Open to any US location)

Remote: Yes, open to remote, hybrid, or in office

Willing to relocate: Yes

Technologies: Fortran, Python (Matplotlib, Numpy, Pandas, Scipy), OpenMP, Git/GitHub, Linux, Bash, others...

Résumé/CV: Available on request

Email: 7b8ci3kl@trettel.us

GitHub: https://github.com/btrettel

Personal website: http://trettel.us/ (out of date, hopefully will be updated soon)

Experienced mechanical engineer with a PhD, specializing in computational fluid dynamics, design optimization, and verification & validation of computer simulations. Knowledgeable about patent law from time spent at the USPTO as a patent examiner.

I am particularly interested in opportunities to build cutting-edge physical products where computational simulation and design optimization are key.

I am open to both long-term and short-term opportunities.


Presumably these books can still be searched via HathiTrust: https://www.hathitrust.org/

More on the HathiTrust project: https://en.wikipedia.org/wiki/HathiTrust

Though I don't know how many of the HathiTrust books are the "preview" kind the Reddit post mentions. Maybe none are?


Interesting. I had been thinking recently about grep-friendly structured text file formats given the constraints of regex. But I hadn't considered that you could design a structured text file format to be LLM-friendly given token constraints.


You're right.If a format is easy to grep, it is almost always cheap to tokenize. We treat token density as a primary design constraint.


I think a big part of the problem is an overly narrow view of what a qualified candidate looks like from the hiring side. Tons of qualified people are rejected because they don't look qualified to the people hiring.

For example, recently a friend had an interview and the guy interviewing him seemed disappointed that my friend didn't have experience solving a problem in a particular way as if that were the only way to solve that problem. In my opinion, the way the interviewer solves that problem is inefficient. But they didn't seem to see any other way.

(Yes, a candidate can communicate their abilities better. But in my experience, this only goes so far, and the people hiring need to make more effort.)

A better process would be more open-minded and test itself by interviewing candidates who the interviewer thinks are bad. In science there's an idea called negative testing. If a test is supposed to separate good from bad, you can't just check what the test says is good, you also need to check what the test says is bad. If good things are marked as bad by the test, something's wrong with the test. If I were hiring, I'd probably start by filtering out people who don't meet very basic requirements and have some fairly open-ended interviews early with randomly selected people (who pass the initial screening) to refine the hiring process and help me realize gaps in my understanding.


I agree with this. What stands out to me is that the hiring process often treats one internal mental model as “correct”, and anything outside of it as a flaw in the candidate.

The example you gave about solving the same problem differently is common; different approaches get mistaken for lack of competence.

I like the negative testing idea a lot. If a hiring process never examines who it’s rejecting, it has no way to know whether it’s filtering quality or just filtering familiarity.

Have you seen teams actually test or evolve their hiring criteria this way, or does it usually stay fixed once defined?


> Have you seen teams actually test or evolve their hiring criteria this way, or does it usually stay fixed once defined?

I'm sure many folks hiring do iteratively improve their hiring criteria, though I'm skeptical of how rigorous their process is. For all I know they could make their hiring criteria worse over time! I have never been involved in a hiring decision, so what I write is from the perspective of a job candidate.


That makes sense, and I think your skepticism is reasonable.

From the candidate side, it’s almost impossible to tell whether criteria are being refined thoughtfully or just drifting based on recent hires or strong opinions in the room.

What strikes me is that without explicit feedback loops, iteration can easily turn into reinforcement, people conclude “this worked” without ever seeing the counterfactual of who was filtered out.

From the outside, it often looks less like a calibrated process and more like accumulated intuition. I’m curious whether that matches what others here have seen from the inside.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: