How can you call this 'Absolute Zero' if you need to start with a pretrained LLM? From what I understand, this just proposes that you can take an existing LLM, have it generate tasks and solve the tasks, and have it learn from that. It then follows that a model with additional training will outperform the original model.
I'm assuming that I'm misunderstanding something, because this doesn't seem very novel?
Edit: Seems like a variant of adversarial training?
According to the article, the CEO sold stock, and gifted stock to at least four trusts that have, in turn, sold the stock gifted:
> Subsequent filings from four trusts show that about half of his gifted shares were transferred to them. Those trusts have in turn sold most of the shares they reported receiving, netting at least $1.2 billion in proceeds so far.
Seems like the CEO thinks that it's downhill from here; I'm not sure what other reason there would be to do this.
> A spokesperson for CrowdStrike said the filings reflected estate planning and philanthropic activities
Estate planning is very likely code for tax avoidance. I know basically nothing about Kurtz, I would venture this is all going to family and structuring this staggering generational wealth so they don't overpay taxes.
Estate planning is about avoiding probate courts. It makes the transfer of control of assets much cleaner with almost no risk someone (e.g. an aggrieved family member) can tie it up in courts for who knows how long. It’s why you see even average personal homes placed in trusts.
Placing personal homes into living trusts is also done for medicaid purposes. If you don't actually own the house then medicaid doesn't count it as an asset that you have to sell to pay for medical care, and there's a five-year clawback so you have to do it well in advance of needing it.
The average personal home is absolutely not placed in a trust. It can be but moving your residence into a trust for estate planning purposes is not a common thing.
It depends on the state. california is known for expensive probate and has a lot of turnkey trust attorneys with strong marketting. I still don't know that 'the average personal home' is in a trust there, but there are lots of 'average personal homes' held in trust, not just big fancy houses.
OTOH, California recently added a transfer on death deed that may provide a simpler way to avoid probate on homes, which may reduce the number of trusts formed just for that.
A lot of people leave California and still think they need a trust in other states, so trusts in other states are growing in numbers as well.
My parents did it on advice of their financial advisor. Is it common, probably not, most people don't have a financial advisor but setting up a revokable trust as part of an estate plan is not something that only the ultra-wealthy can do. It can make a lot of sense if you have any postive net worth to pass along to heirs. A lot of people don't, and if you are going to "die broke" (by intent or by happenstance) there's no point.
I did not intend to imply write average personal home is placed in a trust.
>It’s why you see even average personal homes placed in trusts.
This statement meant to convey that people with average levels of wealth, such that tax liability is low enough such that tax avoidance is not necessary, can also benefit from spending a couple thousand dollars with an estate lawyer.
Technically, their heirs benefit because they don’t need to deal with probate court.
I know plenty of average person homes placed into irrevocable trusts for avoiding the medicaid seizure by parents doing so many years ahead of time as they get old.
Props to the author if it is. I'd have a link to donate to a food bank after the article so that people can do something more productive than write angry comments.
> "Despite skepticism from Volcker and Buffet, financial innovation has been and will continue to be a massive net positive for humanity."
I'm not an economist by any means, but most 'financial innovation' I've seen has resulted in new regulations to rein it in and/or block it, which is not a good look for the entire sector. Strong start.
> "To free up capital, the provider bundles many $100 loans and sells them to investors for 95 cents on the dollar through securitization. This allows the provider to recycle funds into new loans, continuing to earn fees."
> "In exchange for fees, banks structure these loans and quickly move them off their balance sheets and to investors."
Even if we ignore the morality of providing predatory loans to people who can't afford to pay for groceries up front, you would think that someone making a good-faith argument would realize, upon writing stuff like the above, that no, this is not a good financial product actually.
If the author actually read some of the stuff they've linked, they'd come across stuff like this:
> "A larger proportion of interest-bearing loans will put the BNPL platforms under tighter regulatory scrutiny, since there are rules and regulations to cap interest rates and to ensure sufficient disclosures to consumers, said Stephen Biggar, director of financial services research at Argus Research."
> "Warehouse facilities tend to have the highest cost compared to other funding sources, while selling the receivables as asset-backed securities is generally cheaper but more volatile and risky, depending on investors' sentiment, Lucas said."
I'm sure the author would say that the fact that there's an appetite for this justifies the offering existing, and I'm looking forward to their next article about all the positive value that loan sharks provide, or why all the failures derived from high-risk assets falling through are perfectly fine.
> "Non-Systemic Risk (possibly famous last words but we’ll see)"
> "Do I want to see a Sports Betting BBS Index? No. Will it happen? Definitely. Sports betting does a lot of damage to the finances of American households but when the loans backing them are securitized, they will make for a great fixed income product because because gambling is a somewhat recession-resilient industry, much like other ‘sin sectors’ like alcohol and tobacco (BBS indexes for alcohol and tobacco will also happen, and around here is where I may get tired of winning)."
I hope that this entire article is a joke that flew over my head.
> "Late Fees: Miss a payment, and you’ll likely face a modest fee, often capped to keep things reasonable. Picture Alice, who forgets a $25 installment on her $100 DoorDash transaction. She’s hit with a $7 late fee, tacked onto her next payment. Annoying, but it probably won’t push her down a debt spiral."
Yes, I'm sure that tacking on a 30% late fee to a person who can't pay $25 is reasonable.
> "In Design, the principle of Universal Design focuses on creating inclusive systems and tools that improve usability for all. Autocorrect, text-to-speech readers, dark mode, and subtitles all came from Universal Design. Similarly, lending that makes credit more affordable and accessible for lower-income individuals will reduce credit costs for all borrowers."
This is such a bad-faith argument, I'm frankly surprised to see it written.
The _least_ I can say about the article is that I am unconvinced, and that I'd be happy if I never got the chance to meet the author.
Is there a reason for using Selenium over something like Playwright? I haven't had very many positive experiences with selenium, and playwright I found is easier to use and more flexible.
There's quite a few ways to figure out that a browser is a bot, and I don't think replacing a few values like this does much. Not asking you to reveal any tricks, just saying that if you're using something like Playwright, you can e.g. run scripts in the browser to adjust your fingerprint more easily.
I am quite aware, but I actually built most of the scraping logic a long time ago, before I even knew that playwright was a thing.
I am looking to refactor a lot of this, and switching over to playwright is a high priority, using something like camoufox for scraping, instead of just chromium.
Most of my work on this the past month has been simple additions that are nice to haves
I was in a similar boat with my scrapers. Started with Selenium 5-6 years ago and only discovered Playwright 2 years ago. Spend a month or so swapping the two, which was well worth it. Cleaner API, async support.
With the custom headers, you can actually trick a lot of sites with bot protection to let you load their sites (even big sites like youtube, which I have found success in)
Another cool trick is to deny all the content types you don't care about in your playwright.
so if you only want text why bother allowing requests for fonts, css, svgs, images, videos, etc
Just request the html and cap down all the other stuff
PS: I also think this has the nice side-effect of you consuming less resources (that you didnt care about/need anyways) from the server, so win win
Agreed with basically the entire article. Also happy to hear that someone else was as bewildered as me when they visited the MCP site and they found nothing of substance. RFCs can be a pain to read, but they're much better than 'please just use our SDK library'.
Agree... this is an important blog. People need to press pause on MCP in terms of adoption...it was simply not designed with a solid enough technical foundation that would make it suitable to be an industry standard. People are hyped about it, kind of like they were for LangChain and many other projects, but people are going to gradually (after diving into implementations) that it's not actually what they were looking for..It's basically a hack thrown together by a few people and there are tons of questionable decisions, with websockets being just one example of a big miss.
The Langchain repo is actually hilariously bad if you ever go read the source. I can't believe they raised money with that crap. Right place right time I guess.
Yeah agree. I spent a few hours looking at the langchain repo when it first hit the scene and could not for the life of me understand what value it actually provided. It (at least at the time) was just a series of wrappers and a few poorly thought through data structures. I could find almost no actual business logic.
I made an error trying with aws bedrock where I used "bedrock" instead of "bedrock-runtime".
The native library will give you an error back.
Langchain didn't try and do anything, just kept parsing the json and gave me a KeyError.
I was able to get a small fix, but was surprised they have no error like ConfigurationError that goes across all their backends at all.
The best I could get them to add was ValueError and worked with the devs to make the text somewhat useful.
But was pretty surprised, I'd expect a badly configured endpoint to be the kind of thing that happens when setting stuff up for the first time, relatively often.
I didn’t believe you before clicking the link, but hot damn. That reads like the ideas I scribbled down in school about all the cool projects I could build. There is literally zero substance in there. Amazing.
And then you read the SDK code and the bewildering doesn't stop at the code quality, organization, complete lack of using exiting tools to solve their problems, it's an absolute mess for a spec that's like 5 JSON schemas in a trench coat.
>scratch-built in Rust _all the way down to handcrafted GPU shaders and OS graphics API calls_
Is this what happens to people who choose to learn Rust?
Joking aside, this is interesting, but I'm not sure what the selling point is versus most other AI IDEs out there? While it's great that you support ollama, practically speaking, approximately nobody is getting much mileage out of local models for complex coding tasks, and the privacy issues for most come from the LLM provider rather than the IDE provider.
I don't think that this is a fair comparison. HTTP actually has a specification that you need to follow if you need the web to _work_ (or at least, look good). MCP and others on the other hand are just you explaining to the LLM how you want it to format its responses.
MCP is barely worth being called a protocol; LLMs are now smart enough to follow instructions however you give them. When I played around with creating my own tool-using agent, I specified the tools in YAML, and asked it to use custom tags to 'call' them. It worked just fine.
More critically, there's nothing stopping the LLM from _not_ obeying whatever it is you give it, especially as the context fills up and/or the user trying to break it, except its own training. There is no proper HTTP server that would give you invalid responses 'just because'. Yeah, you could wrap the agent in a function that calls it again and again if the response isn't properly formatted with whatever formatting error happened, but I don't think any sane person would call that 'following the protocol', as the only entity it makes happy is whoever you're buying tokens from.
> MCP and others on the other hand are just you explaining to the LLM how you want it to format its responses.
There's a little bit more to MCP than that. Arguably the most useful part of MCP is more on the (MCP) server side, in regards to discoverability of tools. Having a standard protocol for listing tools, resources and prompts means all you need is the endpoint where the server is located, and you can just get the tool list in a couple of lines of code, pass it to the LLM and then invoke the tool(s) without hand-rolling a bunch of code.
This is probably more useful if you think in terms of using MCP tool servers written by other people. If you're only using your own stuff, then sure, you only write your own interface code once. But if you want to use tools provided by others, having a standard is handy (albeit certainly not required).
I like the way @01100011 phrased it in his analogy with Junit:
"I kept thinking it was stupid because in my mind it
barely did anything. But then I got it: it did barely
do anything, but it did things you'd commonly need to do
for testing and it did them in a somewhat standardized
way that kept you from having to roll your own every
time.".
It's all 'clever prompting' all the way down. 'Chain of thought', excuse me, 'reasoning', 'agents'. It's all just prompt scaffolding and language models.
There is no way this ends the way the salespeople are saying it will. Indexing over a compressed space and doing search is not the future of computation.
You can (theoretically) constrain LLM output with a formal grammar. This works on the next token selection step and not just another prompt hack. You could also (theoretically) have a standard way to prompt an LLM API with formal grammar constraints.
That would be a very useful feature.
MCP is not that, MCP is completely unnecessary bullshit.
The first part of this comment is great, but can you please avoid name-calling in the sense that the HN guidelines use the term?
"When disagreeing, please reply to the argument instead of calling names. 'That is idiotic; 1 + 1 is 2, not 3' can be shortened to '1 + 1 is 2, not 3." - https://news.ycombinator.com/newsguidelines.html
Your comment would be just fine without that last bit—and better still if you had replaced it with a good explanation of how MCP is not that.
Can you elaborate a bit more on "theoretical" formal grammars and constraints that would allow the LLM to use a search engine or git commands and produce the next tokens that take the results into account?
Here are some practical, non-theoretical projects based on a boring and imperfect standard (MCP) that provide LLMs capabilities to use many tools and APIs in the right situation: https://github.com/modelcontextprotocol/servers
An LLM doesn't "use" anything. Your agent does that. The agent is the program that prompts the LLM and reads the response. (The agent typically runs locally on your device, the LLM is typically on a server somewhere and accessed through an API.)
For the agent to parse an LLM's reply properly you'd ideally want the LLM to give a response that adheres to a standard format. Hence grammars.
I'm guessing your confusion stems from the fact that you've only ever used LLM's in a chat box on a website. This is OpenAI's business model, but not how LLM's will be used when the technology eventually matures.
It's not really that much harder, if at all, for dynamic languages, because you can use type hints in some cases (i.e. Python), and a different language (typescript) in case of Javascript; there's plenty of tools that'll tell you if you're not respecting those type hints, and you can feed the output to the LLM.
But yeah, if we get better & faster models, then hopefully we might get to a point where we can let the LLM manage its own context itself, and then we can see what it can do with large codebases.
I'm assuming that I'm misunderstanding something, because this doesn't seem very novel?
Edit: Seems like a variant of adversarial training?