LLMS don't "hallucinate" they generate a stochastic sequence of plausible tokens that, in context when read by a human, are a false statement or nonsensical.
They also dont have an internal world model. Well I don't think so, but the debate is far from settled. "Experts" like the cofounders of various AI companies (whose livelihood depends on selling these things) seem to believe that. Others do not.
I’m not talking about startups with financial stake. I’m talking about academics and researchers who have zero financial stake and are observing the phenomenon. It is utterly clear now that stochastic parroting is not what’s going on.
Please elaborate on the measures taken to protect and warn civilians, or which specific military objectives the children hurt by those exploding pagers were in the close vicinity of.
Weeks out, with more facts settled, it does appear that this was one of the most (if not the most) precisely targeted attacks in the history of modern warfare, measured either by ratio of combatants to noncombatants injured, or by the measures used to target it (which included creating a fake pager distributor that sold legitimate pagers to legitimate sources and selectively delivered compromised pagers specifically to Hezbollah, which used them on a private military network it fought a civil war in Lebanon to maintain).
What isn't captured in these threads but should be obvious to anyone looking 150 miles south is that conventional warfare, as conducted by every military power in the world, kills children and noncombatants in vastly higher numbers.
Use this attack to disqualify Israel's reckless and militarily pointless continued campaign in Gaza. Clearly, they had the capability not to conduct warfare the way they are there. Or, if you like, to condemn all warfare worldwide. But the attempt to single out the pager/radio attack as distinctively amoral is unpersuasive.
FYI I disagree that this necessarily means that in Gaza.
Israel has spent 18 years fairly convinced that Hamas isn't a major threat and that Hezbollah is, so most resources were spent on preparing for war with Hezbollah. This is maybe even mostly correct.
That means Israel was far more prepared to attack Hezbollah, and it shows.
If the US were ever attacked by Russia, it has battle plans in place. If it were attacked by Argentina, I don't think it has nearly as many plans/assets/intelligence/etc. So a counterattack on Argentina would have to look very different.
(Though of course this mostly explains the initial response, and as you say, is far less convincing one year in!)
Israel spent 18 years willfully not addressing Hamas the way it did Hezbollah, as a mechanism to prevent a 2-state solution. Israel is responsible for the fact that it did not have the level of seriousness and preparation for Hamas that it did for Hezbollah, knowing full well that it would ultimately end up fighting Hezbollah in the sparsely populated hills of southern Lebanon, and Hamas in dense urban areas. It is culpable for the civilian toll in Gaza that resulted.
What Israel's leadership did here goes beyond not caring about civilian lives in Gaza. They cynically abetted Hamas's strategy to sacrifice those lives in a bid to start a world war that would bring on the end times, knowing that Hamas was absolutely batshit crazy and would thus keep Palestinians permanently destabilized.
Please do not mistake me for someone who has any sympathy for the plight Israeli leadership finds itself in today. They belong in the Hague.
> Please do not mistake me for someone who has any sympathy for the plight Israeli leadership finds itself in today. They belong in the Hague.
That's fair enough, many Israelis feel likewise. You shouldn't mistake me for liking the Israeli leadership either.
That said - Hamas played a game of pretending to be appeased, and it worked. I agree that Israel has been absolutely immoral over the last 18 years, though I think the bigger problem was closing off avenues for peace and not (as Israel should've done as the stronger party) aggressively pushing for peace.
That said - I do wonder what you think Israel should've done differently. Because to address Hamas earlier would've meant invading Gaza years ago. Certainly Israelis can and are upset that its leaders let Hamas build up so much strength, but do you think anyone in the world would've had any sympathy for Israel had it done a ground invasion to root out Hamas fifteen years ago? Even after October 7th there was barely sympathy to root out Hamas.
This is like, imagine David Koresh's Branch Davidian cult took over Waco, and then the entirely of Texas CD17, and the Republican governor of Texas deliberately made space for the cult for electoral reasons. Later, Koresh starts a march towards Austin, making it as far as Temple, which he sacks before being turned back; the ensuing effort to apprehend him in Waco kills 5% of the its entire civilian population.
Who do I blame for this situation? There's a lot to go around. Certainly, I do not come out thinking Koresh's Branch Davidians were the victims. I am also not so much interested in the percentage of blame allocated to each culpable party; they're all awful.
Well, I agree, the current government of Israel is awful, as is Hamas.
But I'm still not sure what you think Israel should've and could've done differently specifically on the point of Hamas.
In your scenario, if the governor of Texas had decided not to make space for the cult, and had instead rooted them out, I don't think anyone would've been upset. But do you honestly think that if, after Hamas won the elections in Gaza and kicked out the PA, that Israel had decided to invade Gaza and fought with Hamas - without direct provocation - do you think in that scenario people wouldn't be just as upset at Israel?
I say this as a Netanyahu-hating leftist "peace-advocate" (mostly). I think most of us would've been upset at the "war-mongering" Netanyahu in that situation. That's why I hard on this - it's a self-criticism as much as it is a criticsm of others. The truth is, pre-emptive war might've been the correct move against Hezbollah and against Hamas, but I honestly don't think anyone would've been ok with Israel doing it. Do you think otherwise?
> But I'm still not sure what you think Israel should've and could've done differently specifically on the point of Hamas.
They could have not actively worked to foster the networks in Gaza that became Hamas in order to both split Palestinian opposition and have a less sympathetic, more extremist, more Islamic opposition to deflect international pressure to make peace with the Palestinians.
That they are capable of this level of precision but choose not to use it in Gaza seems to imply that destroying and depopulating Gaza is the military goal there.
The pagers were sold to Hezbollah. The military objectives achieved were:
a) to prevent the combatants holding the pagers from being able to attack Israel in the future
b) to disrupt the communications of Hezbollah, therefore, making it more difficult for them to coordinate attacks Israel.
Also, the explosives used were weak such that most people near them were maimed rather than killed. Meaning, it is reasonable to assume that alternative methods of eliminating the Hezbollah operatives, such as airstrikes or a ground invasion, would end up with a significantly higher civilian casualty per targeted combatant ratio than what we saw with the pager attack.
The only acceptable "civilian casualty per targeted combatant ratio" is zero. The recent terrorist attack committed by Israel in Lebanon and Syria breaks every respectable moral compass. Innocent people, including children, were harmed and continue to be harmed by Israel's ongoing war campaign. And I can't believe I have to say this, but "maiming" children is not any less morally bankrupt than killing them.
> The only acceptable "civilian casualty per targeted combatant ratio" is zero.
A lot of German civilians were killed during World War 2. Would you have preferred handing the Germans all of Europe to prevent that? As others have noted, reality is significantly more complex than theoretical ethics. Often times your choice is not between right and wrong, but between wrong and somewhat less wrong.
> reality is significantly more complex than theoretical ethics
Actually, it's the other way around. This is covered by very rudimentary theoretical ethics. [0] The trolley problem has never been justification to cause harm to innocent people. It focuses on "impossible" binary choices in which either decision leads to innocent people being harmed. But reality is not a false dilemma. There exists a spectrum of choices that can be made, not just two. It's not "kill innocent Palestinians" vs "allow Jews to be killed".
Israel is a colonial apartheid state. The entire conflict has been manufactured from the beginning in order to establish Western supremacy in the Middle East. Now the colonial imperialist US government is supporting Israel in a genocide in order to secure its colonial presence. Tim Walz literally let it slip during the VP debate that this is about "the expansion of Israel". The UN is by and large condemning Israel for its role in this genocide, the ICC prosecutor considers Netanyahu a war criminal. [1] There is absolutely no moral justification for this, and I urge you to not be a victim to the Western military industrial complex's propaganda machine. This is a modern-day Holocaust and if we're lucky, history will remember it as such.
> Israel is attempting to stop further attacks on the only place that Jews are allowed to protect themselves.
We have the 2nd Amendment in the United States. Jews are quite able to protect themselves there. Israel isn't the only place. I liked Ari Shaffir's light-hearted retorts to Howie Mandell on the issue: https://www.youtube.com/watch?v=cQNieyWrZ0c (Jimmy Dore commentary on their segment)
> elaborate on the measures taken to protect and warn civilians, or which specific military objectives the children hurt by those exploding pagers were in the close vicinity of
This paragraph doesn't require proactive measures be taken to protect civilians. It just suspends its own restriction on booby-trapped items if there is a military objective.
I learned debugging (with the VS IDE and .NET tools) on my first job. School never taught me anything about debugging. Certainly not how to use the tools, but more critically never taught me: how to use binary divide techniques to track down which change caused a bug, how to use deductive reasoning to narrow down what can't be the problem, and even how to carefully read error messages to pinpoint the issue.
Schools teach theory, and sometimes they teach some versions of practical job skills. But it's pretty hard for a for-profit educational institution to make good decisions regarding education when students are the product and for-profit businesses are the actual customers. You end up maximizing recruiters' ideas of what makes a good worker and makes them marketable products, rather than what other working people have experienced as being important job skills. People say software devs need stronger unions but what we really need is to bring back guilds.
But in sentences like: “Could you hand me that, please?” The word “please” seems redundant, “could you” already does the job of asking nicely. That is, from my perspective as someone speaking English as a second language.
In that case, it does not materially change the content but it does change the tone to indicate you would appreciate them responding in the affirmative . Adding a “please” to a request also doesn’t make it harder to understand.
You do have a point, though. Passive voice can be a lot more wordy / harder to parse, but people often use it to be more polite sounding.
Seems like a fine point, I guess, but this article exists mainly as a Trojan horse for that nerd-sniping "encryption by proxy" link. You go "Never heard of that, what is it?" And click and surprise! It's the thing they're selling to you!
Which is, hilariously, send us your data and we'll encrypt it for you! Very secure, much privacy.
I always feel like I should be doing more with Pharo. I love smalltalks and there's something really fun and playful about working with it, even those with a more "professional" shine on them like Pharo. I've been experimenting with Godot recently and I feel like there's a lot of that spirit in modern gamedev, where the tool is written in itself and gives you all of the same parts to play and build with.
I guess I don't really know what my usecase for Pharo is, like what niche is it filling? Maybe I need to build my next web...thing with it and see how it works out?
IMO it's a good tool for web scraping. The reason: you can do web scraping with Parasol (i.e. Selenium [1]) and then if you need visualization tools then you can immediately use Roassal [2]. The thing is: Pharo and the fact that it's more GUI-oriented than other programming languages, allows for data visualization a bit easier. Also: you don't need to know database specific. You can just store the data and save the image. Super useful for small web scraping projects.
Another use-case is: open-source software where you want to encourage users to just open up "the damn code engine" and hack straight into it, seeing it change on the fly. Like, can you just right click in Windows on a pixel and change the code that underlies it? In Pharo you can! Commercial parties would find this horrible, but it's amazing for full open-source software. Note: I don't think any other language is capable of this!
For web apps, B2B works quite well. B2C, I see scalability issues.
I find it useful for scripty things once you come to terms with not needing to write to stdout. Although there are ways to do that and call into the image from shebang scripts. Also, as long as you leave the image running you can setup cron like jobs in the image.
The reason I like it for this type of thing is that all you need resides in the image instead of shell scripts scattered hither and yawn. Also, the development for these types of things I find much easier because of the ability to inspect results of every step in the workspace/playground before stitching it all together in a class. I guess in that regard it’s a similar flow to Lisp.
I don't really like the latter parts of the article where he begins suggesting that we need to contextually tag all data so the provenance of generated items can be assessed.
Somehow, I don't think forcing attribution and tracking on all the world's data is a good idea. Or, you know, possible.
Like, he outlines this nightmare scenario of terrorists using torture deepfakes to threaten people, then wants to pretend that terrorists will be so kind as to mark their videos as AI-produced?
Like the top comment said, the problem is corporations and capital. All the rest of this is more and more smoke to cover up the very real, human-powered destruction of the open web, free information, and privacy.
I did enjoy reading the preview book for EventStorming, seems like a decent format for getting stakeholders involved in the design process and capturing business details. I'm pretty sure you can also do this with an org-mode doc and emailing the right questions to the right people, but discovery is hard and having a big post-it note brain storm with 30 people does sound like more fun!
I don't know, I feel like tech people are regularly amazed that other people can describe the events, processes, and data needs of their jobs if you just ask them. Likewise I grant that many people are poorly onboarded and end up "faking it to make it" in their careers. I've seen similar "people lighting up as they finally understand what the company does" moments through the use of literally any form of high-level modeling of the business. People are starved for context at most jobs.
I tried the EventStorming a few years ago with a dept for working out a new system , it was really eye opening how everyone referred to things - seeing it all laid out made them realise they all did things slightly differently, and referred to things differently. It was fun and very useful to not just me, but them as well
I don't think I can upvote this hard enough. Getting people to think and talk about what they do in context provides a lot of great insight in how to use tech (or not use it) to solve their problems.
Well that's rote learning for you, but I don't think it's the same issue as people avoiding knowing about context. I've met very smart people who know their silos quite well and refuse to acknowledge any picture bigger then they need to, strictly speaking.
The good parts of SOA, the event and CQRS stuff, data administration (and curation recently), and BDD all reduce to the same set of ideas.
But then there are always people that look at those and keep exactly the bad parts. Like the links from the article, that all but define event-driven architectures as software that use Kafka.
You're setting up an extra layer of difficulty around the system. Sure, the English is 'easy' to read, as long you do the hard work of converting the test cases to English. Then when something goes wrong or you want to know what's really going on, you have to translate from English back into the system's language to think about it.
The utility of Cucumber, it seems to me, is that it makes it more likely that the business level description of the test cases is maintained in sync with the technical implementation, which (if the test cases aren’t squirreled away in the tech team away from the eyes of people responsible directly to customers) makes it less likely that you experience drift between what you are testing and what users rely on the system to do.
Its not that it makes testing easier, its that, in the right social context, it makes testing more likely to be aligned with business intent.
A) Business will never read your tests. Whatever you are smoking that has you thinking they will, stop it. A.5) In the event they do, they will never extract the nuance of the glue.
B) that extra layer of translation, when combined with a multitude of different people who refer to or model different things in different ways is going to devolve into the Tower of Babel, and you'll soon find yourself in step level meta-hell trying to bridge in new cross cutting abstractions into huge swathes of code that will break for reasons that seem entirely irrelevant to the hackneyed step grammar.
C) Seperation of Concerns: Writing English/Natural language to be understood utilizes a fundamentally different approach to Authorship than does code authoring. Write code that works, then. Explain it with comments. Do not use DSL's because then you're just adding writing a parser layer on top of writing a test framework that works.
D)If I see one more spelling mistake I'm going to....
BDD is doable. As a testing professional though, I always emphasize the parts wherein the work is packaged and delivered in entire flows rather than on using a tool like Cucumber and making my testers suffer through writing English for people who will never look at code, even if you threatened them with bodily harm if they didn't.
Do what works for you though. I find it works okayish for integration or system level testing... But it's way to heavy for anything else.
I pretty much agree with you. Do you think there would be any value in having some sort of integration that goes the other way - scan existing test suite code and converts to natural language for surfacing to the business?
Devs are already doing this with adding comments with Github copilot .. might be an interesting way to close out the loop without putting too much process in.
That ones tricky, because most of computing is composing primitives distilled out of the ambiguous mess of a business context. Your implementations are the bones of process left when you've peeled back the skin, cut out all tha musculature, and removed anything resembling a squishy bit, just leaving a skeleton.
So you're asking the computer to look at bones, and vomit forth a description of just WTF you were trying to do in the first place, when the same set of primitives, configured in the same way, could solve problems in thousands of different contexts.
There may be more success going the other way: distilling the config of primitives from the messiness of requirements; which strikes me as something similar to what is called a prompt engineer; however, the biggest difference there is the additional burden of cutting through BS.
yeah, in the case of the second approach it might have to be more of a dialog than a one of translation from requirements, in the same way you might have a dialog with chatGPT to clear up ambiguity.
Not only that, but it enables product owners to actually express the features they want, in such a way as they can be implemented. Without that devs and product owners tend to second-guess each other.
I've recently introduced Cucumber and it's been an incredibly useful framework for collaborating between developers and product owners. I'd recommend "Writing Great Specifications" by Kamil Nicieja.
I own several apps that I wouldn't be able to maintain by myself without good end to end tests. The nice thing about cucumber is I can come back to a test a year later and instantly understand what it's testing for at a requirements level vs. having to reason through the gnarly details of what it actually does, then work backwards to the original requirement.
It shines the most in gnarly login/sign up flows that always evolve into all kinds of weird edge cases over time.
> The nice thing about cucumber is I can come back to a test a year later and instantly understand what it’s testing for at a requirements level vs. having to reason through the gnarly details of what it actually does, then work backwards to the original requirement.
Yeah, its good to point out that the people who need to think in Business Requirements rather than implementation detail terms are, often the same people, at different moments, especially on smaller teams (or teams that do something closer to Manifesto-and-principles-Agile, rather than bureaucratic-cargo-cult-Agile.)
I disagree. EDA is about how microservices are integrated and, if you establish it, how consistency between them is maintained. Note the talk of ordering guarantees and the like. See also event sourcing and the shifting of responsibility for maintaining data stores: historically data stores were maintained by an authoritative microservice while in many EDA systems multiple copies of the same data stores exist across the system.
There's a theory on how the universe is structured that instead of space-time being like a uniform grid, a Cartesian space, that space-time is made up of nodes which are linked together. I guess kind of like a voronoi diagram in 4 dimensions. I wish I could remember the name of those theories.
If space-time is packed together in most places, then it might resemble a grid to us. This model works in a lot of interesting ways too: wormholes are just links between two otherwise unconnected regions, the curvature of ST can vary depending on the region, and time can flow at varying rates depending on how "dense with time" an area is.
One thing I like about it is that Planck units kind of just represent a minimal distance between nodes (indeed, the connections between nodes defines "distance" and "duration") and everything else just falls out of the geometry of this ST graph.
They also dont have an internal world model. Well I don't think so, but the debate is far from settled. "Experts" like the cofounders of various AI companies (whose livelihood depends on selling these things) seem to believe that. Others do not.
https://aiguide.substack.com/p/llms-and-world-models-part-1
https://yosefk.com/blog/llms-arent-world-models.html