> Because an FFT (short for "Fast Fourier Transform") is nothing more than a curve-fit of sines and cosines to some given data
That is not even wrong. A Fourier transform is a basis expansion. In particular, the full expansion is exact (not just an approximation). Of course, truncated expansions are approximations.
The actually interesting part: Why is this basis expansion so much more useful than, e.g. expanding into some eigenfunctions, Hermite polynomials, etc.? The decomposition into (complex) exponentials converts between addition and multiplication, i. e. sin(x+y), cos(x+y) you get from multiplying sin(x), cos(x), sin(y) and cos(y).
This in turn has important implications such as turning derivatives into multipliers.
More generally you can consider nonlinear Fourier transforms with different groups and generators other than exponentials.
TLDR: It is a transform. What you are transforming between is what makes it so useful.
This obsession with "everything must be commercialized" is really killing creativity.
Now if the author was commercializing other peoples reviews, sure, it's potentially(!) unethical.
But scraping a website for reviews that are publicly(!) posted, training a recommendation LLM and then sharing it, for free, seems ... exactly the ideal use case for this technology.
Another factor is that Amazon is big enough that crawling a minor website under their umbrella for a noncommercial project is unlikely to notably affect them.
Stabbing people with swords is evil, unless they are so big that to them it's at worst a light poke with a fork
At the same time, everything you ever posted online has already been scraped by hundreds (maybe thousands) of entities and distributed/sold to countless other entities. The only difference is that OP shared his project here.
The toothpaste maker wants to claim something like "Novamin is useful". In the EU this is treated as for cosmetics, so relatively low bar to clear. In the US this is treated as pharmaceutical, so a high bar to clear. The manufacturer has decided that passing that bar is not financially sensible for them.
This is not about "X sucks", but the very first questions from an engineering perspective should be whY? What do you want to accomplish? Is X actually a good approach towards Y?
If it turns out that trying to shoehorn X into kinda accomplishing Y is very hard work, then suggesting to use X2 instead is a perfectly sensible suggestion.
If you have a hard constraint that you must use X, even if it does not fit well to Y, fair enough. Then you add that as a reply or state it in the beginning.
Excellent point about the security concerns. You're right that the combination of:
- Sensitive knowledge access
- Tool use/actions
- Potential exfiltration
Is a serious concern, especially in enterprise environments.
Currently, this has:
- Row-level security in Supabase
- API key auth
- Rate limiting
But it does NOT have:
- Comprehensive audit logging
- Fine-grained permission controls
- Tool execution sandboxing
- Data loss prevention
You're right that this shouldn't be deployed in production with sensitive data without significant security hardening. I should have been clearer about that.
Thanks for the link to Simon's article - very relevant. This is more suited for learning/experimentation than production use with sensitive data right now.
If anyone wants to work on security features, I'd be happy to collaborate on that!
Configuration should go in a defined place. /etc and ~/.config on linux, registry and %appdata% on Windows. A common location makes management, synchronization and backups easier, and space is rarely a concern for configs. Cache directories should go in a defined place. /var/ and ~/.cache on linux, %localappdata% on Windows.
But application files have a huge size range depending on the assets the program needs (typical sizes range from the tens of MB to the tens of GB, with large outliers in either direction). I have multiple tiers of storage (a terabyte of SSD, multiple TB of HDD, tens of TB of network storage) and allocate my software to the desired storage tier depending on my needs
And this isn't just a thing on Windows, Android does the same by allowing you to moving apps to the SD card, provided you have one. Management is just greatly simplified in that case because you have at most two meaningful storage locations on an Android location, while desktop or laptop might have any number of them
But I also want to be able to decide to not adhere to that standard when it gets in the way. It's my machine, there's no reason why I can't make these decisions myself.
You mean how on linux "make install" just installs to whatever directory (/usr/bin/, /usr/local/bin/, /opt/?), and if you want to change it you have to do ./configure --prefix=whatever?
That is not even wrong. A Fourier transform is a basis expansion. In particular, the full expansion is exact (not just an approximation). Of course, truncated expansions are approximations.
The actually interesting part: Why is this basis expansion so much more useful than, e.g. expanding into some eigenfunctions, Hermite polynomials, etc.? The decomposition into (complex) exponentials converts between addition and multiplication, i. e. sin(x+y), cos(x+y) you get from multiplying sin(x), cos(x), sin(y) and cos(y). This in turn has important implications such as turning derivatives into multipliers. More generally you can consider nonlinear Fourier transforms with different groups and generators other than exponentials.
TLDR: It is a transform. What you are transforming between is what makes it so useful.
reply