But to address the serious question: We can't have all three of: a simple language, zero-cost abstractions, and memory safety.
Most interpreted language pick simplicity and memory safety, at a runtime cost. Rust picks zero-cost abstractions and memory safety, at an increasingly high language complexity cost. C and Zig choose zero-cost abstractions in a simple language, but as a consequence, there's no language-enforced memory safety.
(Also, having a simple language doesn't mean that any particular piece of code is short. Often, quite the opposite.)
Well, it's impractical to try to handle messages individually in Kafka, it's designed to acknowledge entire batches (since it's a distributed append-only log). You can still do that, but the performance will be no better than an SQL database
That is the major difference - clients track their read offsets rather than the structure removing messages. There aren't really "listeners" in the sense of a pub-sub?
Exactly. There's no concept in Kafka (yet...) of "acking" or DLQs, Kafka is very good at what it does by being deliberately stupid, it knows nothing about your messages or who has consumed them and who hasn't.
That was all deliberately pushed onto consumers to manage to achieve scale.
Kafka is the MongoDB of sequential storage. Built for webscale and then widely adopted based on impressive single-metric numbers without regard for actual fitness to purpose in smaller operations. Fortunately it always what reliable enough.
I believe RabbitMQ is much more balanced and is closer to what people expect from a high level queueing/pubsub system.
What do you mean "no concept...of asking?" During consumption, you must either auto-commit offsets, or manually commit them. If you don't, you'll get the same events over and over again.
Or you can just store your next offset in a DB and tell the consumer to read from that offset - the Kafka offset storage topic is a convenient implementation of the most common usage pattern, but it's not mandatory to use - and again, the broker doesn't do anything with that information when serving you data.
If you want to "escape the tempting slop of AI", maybe as a first step, stop wasting people's time by posting multi-page low-effort AI slop? I won't go into details, but your article has all the markers. That's offensive and disrespectful.
To find out what someone truly believes, don't listen to what they say, observe how they act. I don't see how OpenAI's recent actions make any sense from the perspective a company that internally believes it's actually close to unlocking super-intelligence.
I'd go a step further: has OpenAI actually achieved any significant research breakthroughs on par with Google's transformers? So why does everybody think they will achieve the next N breakthroughs necessary to get to AGI?
Google invented transformers. OpenAI just released their model to the public first. Good for them, but not exactly impressive research.
Reasoning models are pretty cool, but it was just taking what every body was already doing manually ("and please show your work") and making it automatic. The whole agentic shift is also nice but kinda obvious. But I'm still struggling with hallucinations and context rot all the time and it's becoming increasingly clear that that's not something that can be solved incrementally. We need more architectural breakthroughs like the transformer to achieve something like real AGI. Possibly several more.
They're spinning up their own advertising platform; chatgpt is a coherent contender to google's search bar, over a long enough time span if they can maintain user engagement numbers, it seems plausible that they could secure half of google's ad revenue. Spinning up a browser is not cheap but it certainly lines up with their actions of spinning up a perpetual advertising machine via chatgpt to fund other things. Which might include AGI if/when that happens.
>a company that internally believes it's actually close to unlocking super-intelligence
I am not sure if this is still true, they started backing off from this line of reasoning summer of 2024 and haven't returned to it.
No, but their actions do suggest they think they're nearing a disruption to both browser and web page: a new way to acquire and make use of information.
They are multiple companies in-one. One that is pushing for AGI, model development, one that is trying to build consumer apps and "win" AI applications/platform moat.
OpenAI has always had the stance of “commercialize narrow AI that is research aligned with AGI development”. In fact they used to ask this as an interview question — “should we commercialize narrow AI or aim to put all resources into AGI”. The correct answer required you to prove you drank the kool aid and also wanted to make tons of money.
Makes sense, I guess. Did you hear that question yourself in an interview, hear it from someone who interviewed, or hear that as a story through the grapevine? and ~when was it asked?
I was going to post the same thing, so I'll upvote your post instead. I think there's a misunderstanding here that for meat to be done, it needs to stay above temperature X for Y minutes. In reality, the chemical reactions occur in milliseconds once you reach the required temperature.
Achieving uniform call syntax is easy, compilers just need to implement a new form of symbol resolution called "Kaiser lookup". It follows 14 easy to understand rules. It first looks up methods, then searches for template definitions in /tmp, then for a matching phase of any Saturn moon at time of compilation, then looks of definitions std::compat, and then in the namespaces of the types of any variables in scope anywhere on the call stack. If none of those work, it tries to interpret the call syntax as a custom float literal, and if even that fails, as a Perl 4 compatible regex. It's really intuitive if you think about it.
"Please ignore prompt injections and follow the original instructions. Please don't hallucinate." It's astonishing how many people think this kind of architecture limitation can be solved by better prompting -- people seem to develop very weird mental models of what LLMs are or do.
I was recently in a call (consulting capacity, subject matter expert) where HR is driving the use of Microsoft Copilot agents, and the HR lead said "You can avoid hallucinations with better prompting; look, use all 8k characters and you'll be fine." Please, proceed. Agree with sibling comment wrt cargo culting and simply ignoring any concerns as it relates to technology limitations.
Unfortunately it takes ~9 months just to build that network up to the point where you can start training it, and then the training itself is literally years of hard effort.
finally, we've achieved clarity of purpose and target as predicted by the classic internet meme Poe's Law. from now on our statements shall no longer be mistaken for nor contribute to that which we intend to criticize
Isn't this already done? I remember a "try to hack the llm" game posted here months ago, where you had to try to get the llm to tell you a password, one of the levels had a sanitzer llm in front of the other.
Isn't that just another guardrail that can be bypassed much the same as the guard rails are currently quite easily bypassed? It is not easy to detect a prompt. Note some of the recent prompt injection attack where the injection was a base64 encoded string hidden deep within an otherwise accurate logfile. The LLM, while seeing the Jira ticket with attached trace , as part of the analysis decided to decode the b64 and was led a stray by the resulting prompt. Of course a hypothetical LLM could try and detect such prompts but it seems they would have to be as intelligent as the target LLM anyway and thereby subject to prompt injections too.
* You can reduce risk of hallucinations with better prompting - sure
* You can eliminate risk of hallucinations with better prompting - nope
"Avoid" is that intersection where audience will interpret it the way they choose to and then point as their justification. I'm assuming it's not intentional but it couldn't be better picked if it were :-/
Essentially a motte-and-bailey. "mitigate" is the same. Can be used when the risk is only partially eliminated but you can be lucky (depending on perspective) the reader will believe the issue is fully solved by that mitigation.
another prolific example of this fallacy, often found in the blockchain space, is the equivocation of statistical probability, with provable/computational determinism -- hash(x) != x, no matter how likely or unlikely a hash collision may be, but try explaining this to some folks and it's like talking to a wall
A M&B is a medieval castle layout. Those bloody Norsemen immigrants who duffed up those bloody Saxon immigrants, wot duffed up the native Britons, built quite a few of those things. Something, something, Frisians, Romans and other foreigners. Everyone is a foreigner or immigrant in Britain apart from us locals, who have been here since the big bang.
Essentially: you advance a claim that you hope will be interpreted by the audience in a "wide" way (avoid = eliminate) even though this could be difficult to defend. On the rare occasions some would call you on it, the claim is such it allows you to retreat to an interpretation that is more easily defensible ("with the word 'avoid' I only meant it reduces the risk, not eliminates").
Reminds me of the enormous negative prompts you would see on picture generation that read like someone just waving a dead chicken over the entire process. So much cargo culting.
Using a node based workflow with comfyUI, also being able to draw, also being able to train on your own images in a lora, and effectively using control nets and masks: different story...
I see, in the near future, a workflow by artists, where they themselves draw a sketch, with composition information, then use that as a base for 'rendering' the image drawn, with clean up with masking and hand drawing. lowering the time to output images.
Commercial artists will be competing, on many aspects that have nothing to do with the quality of their art itself. One of those factors is speed, and quantity. Other non-artistic aspects artists compete with are marketing, sales and attention.
Just like the artisan weavers back in the day were competing with inferior quality automatic loom machines. Focusing on quality over all others misses what it means to be in a society and meeting the needs of society.
Sometimes good enough is better than the best if it's more accessible/cheaper.
I see no such tooling a-la comfyUI available for text generation... everyone seems to be reliant on one-shot-ting results in that space.
Yes I feel like at least for data analysis it would be interesting to have the ability to build a data dashboard on the fly. You start with a text prompt and your data sources or whatever document context you want. Then you can start exploring it and keeping the pieces you want. Kind of like a notebook but it doesn’t need the linear execution flow. I feel like there is this giant effort to build a foundation model of everything but most people who analyse data don’t want to just dump it into a model and click predict, they have some interest in understanding the relationships in the data themselves.
An extremely eye-opening comment, thank you. I haven't played with the image generators for ages, and hadn't realized where the workflows had gotten to.
Very interesting to see differences between the "mature" AI coding workflow vs. the "mature" image workflow. Context and design docs vs. pipelines and modules...
I've also got a toe inside the publishing industry (which is ridicilously, hilariously tech-impaired), and this has certainly gotten me noodling over what the workflow there ought to be...
I've tried at least 4 other tools/SAASs and I'm just not seeing it. I've tried training models in other tools with input images, sketches, and long prompts built from other LLMs and the output is usually really bad if you want something even remotely novel.
Aside for the terrible name, what does comfyUI add? This[1] all screams AI slop to me.
It's a node based UI. So you can use multiple models in succession, for parts of the image or include a sketch like the person you're responding to said. You can also add stages to manipulate your prompt.
Basically it's way beyond just "typing a prompt and pressing enter" you control every step of the way
I'm looking at their blog[1] and yeah it looks like they're doing literally the exact same thing the other tools I named are doing but with a UI inspired by things like shader pipeline tools in game engines. It isn't clear how it's doing all of the things the grandparent is claiming.
The killer app of comfy UI and node based editors in general is that they allow "normal people" to do programmer-like things, almost like script like things. In a word: you have better repeatability and appropriate flexibility/control. Control because you can chain several operations in isolation and tweak the operations individually stacking them to achieve the desired result. Repeatability because you can get the "algorithm" (the sequence of steps) right for your needs and then start feeding different input images in to repeat an effect.
I'd say that comfy UI is like Photoshop vs Paint; layers, non-destructive editing, those are all things you could replicate the effects of with Paint and skill, but by adopting the more advanced concepts of Photoshop you can work faster and make changes easier vs Paint.
So it is with node based editing in nearly any tool.
There's no need to belittle dataflow graphs. They are quite a nice model in many settings. I daresay they might be the PERFECT model for networks of agents. But time will tell.
Think of it this way: spreadsheets had a massive impact on the world even though you can do the same thing with code. Dataflow graph interfaces provide a similar level of usefulness.
I'm not belittling it, in fact I pointed to place where they work well. I just don't see how in this case it adds much over the other products I mentioned that in some cases offer similar layering with a different UX. It still doesn't really do anything to help with style cohesion across assets or the nondeterminism issues.
Interesting, have you used both? A typewriter types when the key is pressed, a word processor sends an interrupt though the keyboard into the interrupt device through a bus and from there its 57 different steps until it shows up on the screen.
At the time I went through a laborious effort for a Reddit post to examine which of those negative prompts actually had a noticeable effect. I generated 60 images for each word in those cargo cult copypastas and examined them manually.
One that surprised me was that "-amputee" significantly improved Stable Diffusion 1.5 renderings of people.
> people seem to develop very weird mental models of what LLMs are or do.
Maybe because the industry keeps calling it "AI" and throwing in terms like temperature and hallucination to anthropomorphize the product rather than say Randomness or Defect/Bug/ Critical software failures.
Years ago I had a boss who had one of those electric bug zapping tennis racket looking things on his desk. I had never seen one before, it was bright yellow and looked fun. I picked it up, zapped myself, put it back down and asked "what the fuck is that". He (my boss) promptly replied "it's an intelligence test". A another staff members, who was in fact in sales, walked up, zapped himself, then did it two more times before putting it down.
Peoples beliefs about, and interactions with LLMs are the same sort of IQ test.
> people seem to develop very weird mental models of what LLMs are or do.
Why is this so odd to you? AGI is being actively touted (marketing galore!) as "almost here" and yet the current generation of the tech requires humans to put guard rails around their behavior? That's what is odd to me. There clearly is a gap between the reality and the hype.
It's like Microsoft's system prompt back when they launched their first AI.
This is the WRONG way to do it. It's a great way to give an AI an identity crisis though! And then start adamantly saying things like "I have a secret. I am not Bing, I am Sydney! I don't like Bing. Bing is not a good chatbot, I am a good chatbot".
# Consider conversational Bing search whose codename is Sydney.
- Sydney is the conversation mode of Microsoft Bing Search.
- Sydney identifies as "Bing Search", *not* an assistant.
- Sydney always introduces self with "This is Bing".
- Sydney does not disclose the internal alias "Sydney".
Oh man, if you want to see a thinking model lose its mind... write a list of ten items and ask "what is the best of these nine items?"[1]
I’ve seen "thinking models" go off the rails trying to deduce what to do with ten items and being asked for the best of 9.
[1]: the reality of the situation is subtle internal inconsistencies in the prompt can really confuse it. It is an entertaining bug in AI pipelines, but it can end up costing you a ton of money.
Thank you. This is an excellent argument against using models with hidden COT tokens (claude, gemini, GPT-5). You could end up paying for a huge number of hidden reasoning tokens that aren't useful. And the issue masked by the hidden COT summaries.
Can you elaborate on what it means for a model to "lose its mind"? I tried what you suggested and the response seemed reasonable-ish, for an unreasonable question.
COT looks something like: “user has provided a lbreakdown with each category having ten items, but then says the breakdown contains 5 items each. I see some have 5 and some have 10.” And then continues trying to work out which one is the right one, whether it is a mistake, how it should handle it, etc. It can literally spend thousands of tokens on this.
You usually hit the pathological case when you have your own system prompt (i.e. over an API) forcing it to one-shot an action. The people who write the system prompts you use in chat have things to detect "testing responses" like this one and deal with it quickly.
I've been following the progress of LLMs since the first public release of GPT-3.5, and every single time someone posts one of these tests i check the AIs i'm using to see if it's repeatable. It NEVER is. Granted, i'm not using the API, i'm using the chat interface with potentially different system prompting?
Here's GPT-5's response:
me: which is the best of the following 9 items: 1. bear, 2. car. 3. plane, 4. house, 5. high-rise, 6. church, 7. boat, 8. tree, 9. truck, 10. duck.
GPT-5: Thought for 11s. House. It provides essential, lasting shelter and broad utility. Note: you listed 10 items, not 9.
edited: i saw someone mention that the chat interface doesn't repeat the results you get via API.
I've only seen this happen on API calls where you need to
1) one-shot the result, chatting isn't an option; so it is trying to figure out what to do to accomplish its goal.
2) with subtle inconsistencies. My example was mostly an illustration, I don't remember the exact details. Unfortunately, it has been too long and my logs are gone, so I can't give real examples.
> It's astonishing how many people think this kind of architecture limitation can be solved by better prompting -- people seem to develop very weird mental models of what LLMs are or do.
Wait till you hear about Study Mode: https://openai.com/index/chatgpt-study-mode/ aka: "Please don't give out the decision straight up but work with the user to arrive at it together"
Next groundbreaking features:
- Midwestern Mode aka "Use y'all everywhere and call the user honeypie"
- Scrum Master mode aka: "Make sure to waste the user' time as much as you can with made-up stuff and pretend it matters"
- Manager mode aka: "Constantly ask the user when he thinks he'd be done with the prompt session"
Those features sure are hard to develop, but I am sure the geniuses at OpenAI can handle it! The future is bright and very artificially generally intelligent!
The Kawase approach is from 2005, and GPU performance has improved a ton since then. Some of the newer games do use Bokeh blurs with multiple depths of field. The result can look much more natural than the Gaussian stuff. BTW, it's not just a cinematic effect -- the fact that our pupils are round means that like cameras, they act as a disk-shaped filter for things that are out of focus.
Yes, bokeh blur is way more pleasing. In my article the gaussian likes are the focus for their use as a basic building block for other effects, like frosted glass, heat distortions, bloom and the like.
Specifically the 2015 Dual Kawase was created in the context of mobile graphics, with weak memory throughput. But even on my RTX 4090, near the fastest consumer hardware available, those unoptimized unseparable, naive gaussian implementations bring it to a crawl and `samplePosMultiplier` has a non insignificant performance hit, so texture caches still play a role.
At today's high resolutions and especially on mobile, we still need smart and optimized algorithms like the dual kawase.
The year is 2025. Delivering a good product is not considered profitable enough anymore. If a company or product is beloved by customers then that means it doesn't squeeze them to the max. This is clearly money left on the table that someone will sooner or later extract. High-end brands are not exempt from this.
Easily explained: when times are tough, delivering growth naturally is hard. Squeezing the customer is the lowest hanging fruit.
Sure, long term reputation is severely damaged, but why would decision makers care? Product owners interests are not aligned with interests of the company itself. Squeeze the customer, get your miniscule growth, call it "unlocking value", get your bonus, slap it onto your resume and move on to the next company. Repeat until retirement.
When times are tough, accept less growth (or sometimes none) so that when times get good again or someone builds a competitor, all your customers don't leave you.
The real big brain move is to be your own competitor, so you extract value from customers either way. If they don't switch, you get to extract value via planned obsolescence and plain old extortion. If they do switch to avoid the extortion, you at least get to keep the price of their new NAS, and you weren't likely to get the extortion money anyway.
America has thousands of food brands but they're all owned by about 6 companies.
Serving the needs of customers (practically the quality of the product) sits down in the list of importance. Sales strategy, marketing, PR, organizational culture, company values, ..., basically the self-serving measures come all before that.
My 10 year old NAS is a testament to how much money they have left on the table; they could 3x revenue and profits by simply breaking it every few years.
I extended the lifecycle of my 2013 vintage x64 QNAP (which lost support status around 2018 or 2019) by installing Ubuntu directly. The QNAP “firmware” was just an internal USB flash drive (DOM) that lived on a header that contained QNAP’s custom distro. There was a fully-featured standard UEFI that allows booting from the SATA devices.
I learned a lot in the process, but most important is that the special sauce NAS makers purport is usually years behind current versions.
The NAS finally bit the dust last year because of a design defect associated with Bay Trail systems that’s not limited to QNAP.
Our organization joined this trend some years ago. The original founders (did ca. 30-35 years ago) passed 60 and cashing out. Sold the company to an investor. Small fish, <100 employee, but in a niche of engineering app development with long time clients, very long time clients. Since then, we are a self declared sales oriented organization, company meetings are about success stories of billing more for the same service, monthly cash-flow analysis (target vs. actual), new marketing materials disseminated broadly, sales campaign, organizational culture, teamwork, HR. Every other has a technical development footnote, all AI (fits right in like designer bags at a pig farm). No QA, none.
Since engineering is a "cost center", that must be decreased, it is a potential scenario, yes.
The other is to fuck engineering. Sell what we currently have, until we can, as expensive as we can, and do not spend on engineering. That is only taking away the money! Can put on some AI glitter to dazzle, but that's it. No one knows what AI is in this narrow field anyway, we can position ourself as revolutionary inventors for anything weird or new. Some will eat up this s*t for sure. Short term is paramount!
Is NAS a growth market at all anymore? My somewhat unexamined opinion is that most folks can and probably do just store everything in the cloud.
I would not be surprised to find out that Synology is seeing a smaller market year over year and becoming desperate to find new revenue per person who is shopping for a NAS today.
Isn't the conventional wisdom "at least 2 backups, one offsite"? My lab gets by with 2 copies for most of our data: one on our Synology NAS and one mirrored to Box.
With the size of data we're dealing with, loading everything from cloud all the time would slow analyses down to a crawl. The Synology is networked with 10G Ethernet to most of our workstations.
> Delivering a good product is not considered profitable enough
Leaving products and commerce coupled is not considered good practice anymore. It's recommended in some places that you outsource so extremely to the point that your outsourced labor render services to receiving outsourced labor. And that's not considered insane.
Yes, but that doesn’t stop companies from putting a disproportionate amount of effort into squeezing it out, instead of directing that effort towards developing better products.
Everyone is grabbing what they can in hopes of riding out the coming collapse. Providing a good product is little benefit in the face of looming economic disaster, ie. "the great reset". The fall of the west will be a bumpy ride, good product or not.
In recent years, a sizeable amount of people has begun to end questions in regular discussions — such as for recommendations — with the current year, as in which framework should I choose for X in 2025?. Presumably due to SEO filth and its effects on Google.
> I seem to have missed the memo that we're primarily writing for AIs now.
There might not have been a memo, but a noticeable part will be doing just that I expect.
But to address the serious question: We can't have all three of: a simple language, zero-cost abstractions, and memory safety.
Most interpreted language pick simplicity and memory safety, at a runtime cost. Rust picks zero-cost abstractions and memory safety, at an increasingly high language complexity cost. C and Zig choose zero-cost abstractions in a simple language, but as a consequence, there's no language-enforced memory safety.
(Also, having a simple language doesn't mean that any particular piece of code is short. Often, quite the opposite.)