skysight-inc/HackerNews huggingface dataset:
Show HN: Make Any Video Searchable
Hey HN friends! Yuval here, I'm the maker of Conversational Demos:
https://www.producthunt.com/posts/conversational-demos?utm_source=hn

This is a product with a bit of an interesting history: it evolved from my fascination with what we can do with LLMs and video.

My original (engineering) thinking was "how cool would it be if we let someone search through video with natural language"?

I built the original proof of concept for this over the weekend, taped together with passion, code glue, and sheer will to look away from the really shitty code I originally wrote :)

When I showed it to users, I discovered that nobody was really willing to pay for video search - everyone thought it was cool, but there was no hook from a commercial standpoint. And so, as these things happen, I ended up turning it a marketing / sales tool. That's all I'll say about the commercial aspect of it, though I'm happy to expand on it if interesting to the community here.

Technical stuff: ---

Behind the scenes, when you upload a video (or record one - it's integrated with the not-yet-officially-released Loom SDK), it sends the video to AWS Transcribe, which works with nearly 40 languages, and at the same time converts it to an MP4 format that's tiny and viewable across devices (I do this with AWS Media Transcoder).

Next up, I break the transcription down into chunks of around 30 seconds and then send it to OpenAI's embedding database.

Through TONS of trial and error, I learned that to get good latency on this thing, you can't really use a (cheap) vector database, and so I'm doing something pretty hacky, and storing the index on a always-on Docker (deployed to fly.io) as opposed to a serverless function, which I was really trying to use until I realized it's not fit-for-purpose.

Next up, I upload the embedding index to S3 for later use, as well as store it locally on the machine. That's because the machine has ephemeral memory, and when I re-deploy, the index goes away, and so I just re-download it from S3 if it's not there.

I have no idea if this project will commercially succeed. It's live on Product Hunt now, and we'll see how people respond.

To be honest, I find building the most fun, and marketing the least fun. So on that front, I did learn several important things about LLMs and building chat-bots along the way:

1. Use the simplest solution if you're optimizing for latency

2. You can't just feed a VTT transcript into an LLM and expect it to figure out the context - you have to do your own chunking

3. There are lots of open source projects out there for using LLMs (langchain, llamaindex, auto-gpt, etc), but just using OpenAI's APIs directly yielded the best results at lowest latency, and least complexity.

I'm curious to get the feedback of the HN community - less so commercially, and moreso on the technical front, UX, etc.

What suggestions do you have, and what would love to see?

Thanks! Yuval
This guy was very right once and has basically been wrong ever since - why is this interesting? Remember his massive bets on water and disastrous short position on Tesla?
https://archive.ph/gqroD
Schlitterbahn Water Park Accident Nr Kansas City
"neither Henry nor Schooley had a background in mechanical engineering. And according to state law, they didn’t need those credentials to deem their own ride safe—unlike in the neighboring state of Missouri, water parks in Kansas do not require inspections by a state agency."
Jesse, what are you talking about?
Isn't pretty much any situation of layoffs/cutbacks demonstrations of mismanagement? Rarely is it a single issue that was unable to be predicted that causes things like this.
Save the planet, remove daylight saving
See also

https://news.ycombinator.com/item?id=37126780

https://news.ycombinator.com/item?id=37123755
EDIT: Others have commented that this is just that the # of students taking courses vs. the # of students in the major. The phrase "program enrollment" meant something different to me. This would make the 800k profit make sense.

Can someone help me clarify how they're getting to $800k in profit? When I look at their actual numbers, his comments don't make sense.

https://provost.wvu.edu/files/d/bf3ef02f-e90a-4e43-a316-d295...

They somehow have 18000+ credit hours to their department in a year, but only 61 enrolled students in fall 2022 which, means an average student enrolled was taking 310 credits? Or ~150ish if the 2022 credit hours is for both fall & spring?

My guess is that these are $0 credits. Most universities allow you to meet your "foreign languages requirement" by showing your High School transcripts, and then you get those credits applied to your degree. $0 profit. The later part of the spreadsheet clearly shows how impossible this is - they did not make $6.7M with 61 students' tuition. Clearly the spreadsheet is just a dumb formula multiplying by the credits..

So either they're somehow the most expensive foreign language school in the world, with 1 instructor per 2 students that folks are paying $50k+/semester..

Or their research grants aren't being accounted for correctly? (I don't know how grants work, I am but a lowly swe)

Or they're a wildly expensive department that almost no one major's with, and their research grants don't cover their millions in losses to the university.
Well, it is a bit easier if you have no stdlib to speak of
Last year, the entire Nasdaq was rocked with companies like NVidia, Meta, Tesla, Netflix, Apple, Google down anywhere between ~35-70% from their all time highs. A rally of this magnitude is notable, but they're by-and-large just regaining ground they already had (save NVidia which just rocketed past its all time highs). For some perspective on how much those megacaps influence the entire index, the top ten companies in the Nasdaq account for ~50% of the entire index.
FWIW: Clark Howard, a finance guy I highly regard, predicts that the 4th quarter will see a softening of the economy. His reasoning is that the regional banks are being extremely tight with lending right now, and by the fourth quarter many small/medium businesses will have trouble staying afloat due to the lack of financing.
You have the wrong impression of Google Translate. Translate was started in 2006 and it sucked. 60% accuracy at best. Janky incoherent sentences. Translate revolutionized the entire field of language translation in 2016. Seriously. Went to 94% accuracy when Jeff Dean joined the project and spurred them to train against all languages at once. It revolutionized the whole research field of language translation. Translate is now better than most high school students after several years of study. I consider Translate to be one of the top-5 accomplishments that Google ever had:

https://translatepress.com/is-google-translate-correct/

Another breakthrough is picture recognition. Did you know you can type in "motorcycles" and do an image search and there is ZERO text associated with many of those pictures of motorcycles? They really are mapreducing those pictures and running image recognition against a 17M open-source image library to assess "motorcycle-ness" of all those pictures!
They started talking about picture recognition in the early 2000's but it really began happening in the late 2010's after they hired fei fei li, the mother of image recognition ...

https://profiles.stanford.edu/fei-fei-li
Is there some fine print saying "but Apple can"?
Since I started involving myself in more complex application modernization projects, I lean towards Domain-Driven Design.

DDD and agile don’t like each other much at all until you’re in the implementation side of software engineering. The discovery and modeling activities are very hard to quantify so reporting tasks and progress is very difficult.

So the challenge is to get managers to be flexible in how they manage aspects of application modernization.
It's profitable and requires little overhead. Just do both.

That's like saying "I don't want a free PS5, because I think I'd play my Nintendo Switch more often".
Legitimate question.

I'm a backend software engineer/consultant/presales dude. While I've seen lots of ways that people have used GPT and other LLMs like it, I personally haven't found any use for it.

I'm comfortable searching Google (or man pages) when I need answers while programming; I'm pretty good at that, actually.

I also don't need help writing stuff (though my writing skills can always improve!)

However, I can't help but feel like me _not_ using GPT for stuff will leave me behind, which I don't want to have happen.

Is anyone else in a similar boat? If so, how have you used GPT to stay current?
>Grindr has 273.
>And apparently Tinder has 809.

What I find more interesting, is with that amount of employees, you barely hear any kind of leaks, not necessarily the technical type too, it feels like it’s a blackbox of employees unlike other apps say twitter etc., you never get to interact with a “tinder ex-employee” or such, kind of weird, especially when they are treated like that, I expect someone to go out and speaks up about some internal policies, or anonymously leaking some emails, how actually the algorithm works that obviously destroys dating scene so you can pay them more, and so on.
probably lot of money went to stupid gym, sport teams, and fancy buildings for cover of a brochure, while all is needed for these folks and their students to perform is a classroom with a blackboard, some desk, laptop, internet connection, and a place to hangout. That is all needed for 90% of education.
This is only true for the very small turing machines that we know the busy beaver number for. In the general case, for a system of even moderate size, you have no way of knowing if you've waited long enough to know if the program runs for ever or not.
> Isn't pretty much any situation of layoffs/cutbacks demonstrations of mismanagement?

Only if you view the function of management as being to maximize employment at the firm, which the people hiring the managers generally do not.
What enemies? Oh enemies like fossil-fuel energy companies?
> LLMs can generate valid JSON 100% of the time

If that seems surprising, it is worth doing a course like Karpathy's zero to hero NN, and have all the magic peeled away a layer at a time.

The reason you can do this is because LLMs don't just generate the next word or token, it produces a probability distribution over all tokens. A JSON parser can give you a list of next valid tokens. The tokens in each case might be from a different set, e.g LLM thinks of " The" whereas the JSON parser might think of "{", so you need some conversion there. But if you sample randomly from only the valid tokens, the output must be valid JSON.

What you can't build a parser for though is ... the truth! You may still be told lies or made up stuff.
> But how to do it?

Uh, how do you remove cars parked in a fire lane?

This isn't a novel solution that requires tech disruption to solve.
This is almost certainly referring to seniors who continued to wear corrective lenses but had cataracts hindering their vision, as is extremely common in old age. While LASIK can be an excellent long-term solution for myopia, it is not a preventative measure against cataracts.
While it's not a study, https://blog.polybdenum.com/2023/03/05/fixing-the-next-10-00... gives a real-world example of a bug in Go Rust would have prevented.

Also, bear in mind that it's not just Rust's type system directly that prevents bugs, but also the patterns it enables. For example, the typestate pattern and its use in things like turning misuse of the HTTP protocol into a compile-time error in Hyper.

https://cliffle.com/blog/rust-typestate/
Per updated TOS: "Zoom does not use any of your audio, video, chat, screen-sharing, attachments, or other communications like customer content (such as poll results, whiteboard, and reactions) to train Zoom’s or third-party artificial intelligence models. "
A small sample:

The existence of `any`; worse yet, the use of `any` in the standard library.

Mutable arrays are treated as covariant: the classic `cats : Cat[] ; animals: Animal[] = cats; animals.push(dog);` problem.

Methods are both co- and contravariant in their arguments by default, which is comically wrong. Member variables which are functions, meanwhile, are handled correctly.

`readonly` is a lie:

const test: {readonly a: number } = {a: 0}
const test2: {a: number} = test
test2.a = 5

`Record<string, string>` is actually `Record<string, string | undefined>`. There's no way for an interface to specify that it really does return a value at any string index (e.g. for a map with a default value).

`{...object1, ...object2}` is typed as the intersection `typeof object1 & typeof object2`, which is not correct.

const a: {a: 5} = {a: 5}
const b: {a: 4} = {a: 4}

const spread = <L, R>(l: L, r: R): L & R => ({...l, ...r})
const impossible: never = spread(a, b)

You have to resort to bizarre conditional type hackery to control when unions distribute and when they don't.

You can constrain generics as `<T extends string>foo(t: T) => ...` but not `<string extends T>foo(t: T) => ...`, which makes many functions (e.g. Array.includes) much too strict about what they accept.
Never had a wedding, but been to lots of them.

I always found paper invitations annoying. I get so little paper mail I'm barely in the habit of checking the mail box. They seem to sit outside my normal flow of scheduling etc. And sometimes you have this situation where you have been verbally invited but have to wait weeks for the thing to actually show up.

I'd honestly be happier with a calendar invite. And save yourself the money on the paper.
It's also often wasteful. You can claim that "there's always more to learn in any subject", but if someone legitimately knows the material, any activity is more meaningful including playing video games or TV.

I suspect many of these people would also misjudge hard work, for example when people self-teach out of interest, well that's just them having fun. The many hours sports star spent on the playground were just playing.

The idea in some mind is you have to take the hard way (no short cuts!). I can just feel how smug people are when they say this. So the idea of someone not grinding fills them with blind rage.
One of the reddit comments calls out this is an inaccurate reading of the TOS:

> Y’all are some paranoid weirdos. The reason the company responded to OP’s question that way is because OP didn’t understand the TOS.

> “User Contributions” are in the message boards, chat rooms, or blogs visible to other users.

> The Website may contain message boards, chat rooms, personal web pages or profiles, forums, bulletin boards and other interactive features (collectively, “Interactive Services”) that allow users to post, submit, publish, display or transmit to other users or other persons (hereinafter, “post”) content or materials (collectively, “User Contributions”) on or through the Website.

Link: https://old.reddit.com/r/privacy/comments/15qovb2/psa_you_ne...
It could look a lot like a nuclear family. With a healthy economy that doesn't require both parents to work.
I still use infinity for reddit though.
He created the idea at the beginning of the pandemic. His thought process was that the Mr Beast brand would allow smaller stores to carry his product and incentivise people to buy take out from those shops and help during lockdowns.

I don't believe the contract between him and VDC is out outlining the contractual obligations, SLAs, trademark and marketing issues etc.
Why crash? We've almost deflated the bubble with the help of crypto and high inflation.
If you get more of it you definitely won't wake up.
Previously:

"Were Early Modern People Perpetually Drunk? (2016) (hypotheses.org)"

https://news.ycombinator.com/item?id=13535868
For extensions that modify page data, is that prompt still shown? My understanding was that once you have the 'modify page data' permission, you're no longer required to present URLs in the permission prompt at all — but I'd be thrilled to be wrong, if that's changed!
Yes, I read it.

What you responded does not address what i asked.

For example, you could have an implementation that handles the example you cited, but fails at others you did not mention. So would your comment claim "complete" for handling what you mentioned, when it is not?
The only “process” that works in our industry is “hire the right people and get the F out of the way.” everything is bs.

live and work long enough in this industry and you’ll go through myriad of “processes” and “manifestos” and other bs all created to hire tens of thousands of incompetent people to tell 100’s of thousands of (mostly) incompetent people how they should do their work
That would be wild. Bomb dogs usually are not trained to hit on ammunition since every officer on a scene is carrying some. Gunpowder is also a low explosive (meaning it burns at subsonic speed) which sucks for making things go boom.
That is such a good read.
Meanwhile our coal baron Governor is trumpeting that the State of West Virginia has a historic record $1.8-billion tax surplus this year:

https://governor.wv.gov/News/press-releases/2023/Pages/Gov.-...

And we're forcing the primary state university to gut its programs and/or risk complete shutdown over $45-million budget deficit, partially due to inadequate state funding.

Why? Because - tragically - West Virginians pride themselves on ignorance, consistently vote against their own longterm best interests, and loathe the idea of liberal higher education in all its forms.

(To be fair, the current WVU administration is to blame for letting this get out of hand rather than proactive budget cuts, but eduction should also be one of our literally-poor state's biggest investments.)

This cynical perspective has been brought to you by a lifetime WV resident and WVU Computer Science grad, consistently disappointed by my state's active rejection of progress.
The code is a pleasure to read.
> That’s what Agile is supposed to be.

But then does it have to be called "Agile", or can we keep the older "common sense"?

I tend to think that at university, we were pretty good at self-organizing for group projects. We had to be efficient because of deadlines, and it worked well.

Then I joined a company, where some people (usually not the best developers, obviously) felt good telling everybody else how they should work. Introducing processes, reading all sorts of agile books, copying Spotify's processes, using the management tools they saw in a Netflix blog. Those were the managers.

And every time I ask a manager: "so, this process... is it to make you more productive, or is it meant to make me productive?", they say "it is making you more productive". Why would they believe me when I say it does not? Their job depends on it.
This will always happen and will happen much more as we move forward. People specifically tune their models to sound human. People specifically use detectors to turn models, adversarially.

I keep proclaiming that we live in Goodhart's Hell, and this is yet another great example.

First, you have to remember that metrics are never a complete measure, but they are guides. This doesn't matter if you're cutting lumber or training a ML model. Metrics are __always__ proxies. For the vast majority of things you are intending to evaluate, you don't actually have a measurable function to express that. Every fucking measurement has error/noise, and this is why you measure twice and cut once. It is absolutely insane that in the age of advanced algorithms we've just tossed caution to the wind and we're instead doing a half assed measurement and then getting upset when our cuts are bad, blaming the ruler or blaming the saw.

Second, you have to ask how closely your metric aligns with the thing you're actually trying to measure. Even cutting lumber you have to check that your measurement aligns. Accounting for angles and grain. We should be doing the same in algorithms, but with __much__ more care, but we don't for some reason. All metrics must be continually scrutinized. This is why we measure twice (or more), why we double check our calculations, and we do frequent sanity checks and build in redundancy, because you can't fucking trust your metrics.

For some reason we seem to have this belief that empirical measurements are absolute and generalized. We seem to have this belief that noise is a thing that can be decoupled from the system and precisely removed. We seem to have this belief that measurements are unhackable. What the fuck is going on. This isn't just ML, it is academia, it is bureaucracy, it is the workplace, it is governments, it is economics. So I gotta ask, what the fuck is going on? In the past we treated things as hard, so there was an inherent uncertainty built into mental models but now we treat everything like they are simple to understand and a quick reading or video can make you an expert. We may have never had nuance from non-experts, but now everyone acts like an expert and that math is unbiased and objective. Why do we keep shooting ourselves in the foot and deciding the next best action is to reload the gun?
> A school full of nothing but overpaid administrators

Um, exactly?

The budget crisis is, in fact, easy to solve. Start by laying off administrators in order of highest salary (starting with the University President as he has clearly failed at his job) and continue down the path until you have 25% budget surplus.
Agile and scrum are processes invented by the out of touch, mandated by the ignorant, to micromanage the unmotivated.
I worked for a big testing company. There are all sorts of cheating and many are easy to detect with the right tools. Maybe this is just the wrong tool.
Forgive my ignorance, but is this a blog post on Github?
> This makes sense to me: https://agilemanifesto.org/principles.html

> Everything else in the "agile" cult is bullshit.

IMO the fundamental problem with the manifesto is the question, who is the customer? "Our highest priority is to satisfy the customer through early and continuous delivery of valuable software."

My customers don't want "early and continuous delivery". I hate App Store apps that release new versions every week with cutesy uninformative release notes like "We've improved the software for you". That's bullshit. And users don't want "early" half-baked buggy crapware; they want their software to Just Work™.

The Agile Manifesto seems designed for contractors or for wage-slaves to middle-managers. Replace "the customer" with "the end user" and it doesn't sound so great anymore. But nobody seems to care about the users of the software.
"If you find an idea that you think is both valuable to the company and interesting to you" means just that; you. Not your partner, not your boss, not anyone else. You.

The comment is wrong, both in theory and in practice.
"For example, Mining Engineering has experienced a decline in enrollment, yet this area is critical to the state and the region, and there is unmet occupational demand. Also experiencing similar challenges is the Petroleum and Natural Gas program"

Very interesting. The politicians of West Virginia want to prop up the oil and mining industries. Young people do not want careers that destroy the planet. So the solution is: eliminate World Languages?
I've been in too many situations where agile was touted, but it was just something to cover up the lack of longer term planning. Treating everything like a fire and running about being agile is also a sign of bad leadership
It should be bringing you closer to the work. The only “agile” (adjective) way of working I have seen work is where people whole-heartedly believe in the principles listed here: https://agilemanifesto.org/principles.html

If people actually believe that, you should be MORE aware of customer needs, what the market your company exists within is doing, and why things have to be done.

It’s not great if you don’t want to have to worry about outside factors like that, but then you need to expect the many extra managerial and planning layers that will worry about those factors for you.