AI Rewrote UX, Prompt Frameworks Get a Workout, and macOS Gets Ignored by AI Researchers

Published on 28.05.2026

AI & AGENTS

How AI Quietly Changed Modern UX Patterns

TLDR: AI didn't announce a new UX paradigm, it just slipped one in through the back door. Products like ChatGPT, Claude, Figma, Cursor, and Notion introduced interaction patterns that users adopted as habits before anyone sat down to document them. The shift was from deterministic, menu-driven interfaces to conversational, contextual, and probabilistic ones.

Summary: There's something worth thinking about here: major UX shifts usually come with a press release. Someone writes a manifesto about flat design or publishes a pattern library and the industry converges. What happened with AI-powered tools was different. No one scheduled the funeral for the traditional menu bar. It just started looking weird next to a chat input.

The article from Artem Ivanov at otherland.studio makes the case that these patterns emerged inside tools people already trusted, which is exactly why they stuck. Figma added AI suggestions. Cursor replaced the IDE metaphor with a conversational one. Notion started autocompleting your thoughts. None of these launched as a separate product called "AI UX." They were just... there, one sprint at a time.

The old interaction model assumed the user knew what they wanted and just needed to find the right menu item. The AI model flips that. You describe what you want imprecisely, and the software does its best with incomplete information. That's a fundamentally different contract with the user, and it has downstream consequences: error states need rethinking, undo becomes complicated, trust calibration becomes a first-class design concern.

One thing the article gestures at but doesn't fully press: these patterns work until they don't, and the failure modes are opaque in ways that traditional UX failures never were. A broken button is obviously broken. An AI that confidently gives you the wrong answer looks identical to one giving the right one. That's not a UX detail, it's a foundational trust problem that no pattern library has fully solved yet.

Key takeaways:

  • AI features entered existing products incrementally, making their UX patterns feel natural before they were ever formally described
  • The shift from command-based to contextual interfaces changes how users form mental models of software behavior
  • Failure modes in AI-driven UX are qualitatively different from traditional UI bugs and require new design thinking around trust and transparency

Why do I care: As someone who builds and thinks about frontend architecture, this is directly relevant. The question isn't whether to add AI to your interface, it's whether you've thought through what happens when it's wrong. The patterns are real and worth studying, but treating them as solved is premature. If you're a product designer or engineer, read the original for the taxonomy of specific patterns. If you're a dev building these features, think hard about the error states.

How AI Quietly Changed Modern UX Patterns


CRAFT: The Prompt Engineering Framework That Every Tech Professional Needs

TLDR: CRAFT is a five-letter acronym for structuring prompts: Context and Role, Request and Reason, Augment with examples and chain-of-thought, and two more pillars covering formatting and tone. It's pitched as a general-purpose framework for software engineers and product managers who want more consistent results from LLMs.

Summary: Prompt engineering frameworks are multiplying faster than JavaScript build tools, so it's fair to ask whether CRAFT adds anything new or is just another acronym looking for a slide deck. The honest answer is: it's a reasonably practical structure that addresses the most common failure modes in ad-hoc prompting, without pretending to be magic.

The author, Dr. Sreeram Mullankandy, comes at this from an unusual angle, having moved from medicine to product management to software. That background probably explains why the framework reads more like a clinical checklist than a philosophical treatise. You fill in the C (what's the situation, who should the AI behave as), the R (what exactly do you need and why does it matter), and the A (give examples, show the reasoning path you want the model to follow). The remaining pillars handle output format and desired tone.

The practical value is real. Most people get inconsistent results from LLMs because they skip context, forget to explain the purpose of the task, or expect the model to infer constraints they haven't stated. Giving those elements explicit names and a mnemonic makes it easier to catch when you've left something out. That's not a new insight, but packaging it helps.

Where I'd push back: frameworks like this work well for routine, repeatable prompts in software engineering and PM workflows. They're less useful for exploratory or creative tasks where the point is to let the model surprise you. The article focuses on the structured use case, which is fair, but framing it as something "every tech professional needs" oversells it a bit. It's a useful heuristic for teams that write a lot of similar prompts, not a universal law.

Key takeaways:

  • CRAFT provides a structured template for prompts: Context/Role, Request/Reason, Augment, plus format and tone guidance
  • Explicitly stating the purpose and constraints of a task consistently produces better LLM outputs than vague instructions
  • The framework is most valuable for repeated, structured tasks in engineering and product management contexts

Why do I care: If you're building internal tools that involve LLM calls with human-authored prompts, having a shared vocabulary for prompt quality matters. It's easier to review a teammate's prompt against a named framework than to argue about what "good" looks like from scratch. I wouldn't enforce this as a rigid standard, but as a lightweight checklist before shipping a prompt to production, it earns its place.

CRAFT: The Prompt Engineering Framework That Every Tech-Professional Needs


Nobody Told Me Securing APIs Was My Problem in OutSystems

TLDR: OutSystems makes it straightforward to create API integrations, but it does not secure them for you. The article walks through the security responsibilities that fall to the developer, covering JWT, OAuth, and general authentication patterns.

Summary: Low-code and no-code platforms have a consistent messaging problem: they advertise what they automate and stay quiet about what they don't. OutSystems is good at this. The platform handles the scaffolding, the deployment pipeline, and a lot of the boilerplate that would take a traditional dev team days to build. But security? That's your job, and if you assumed otherwise, this article is the uncomfortable clarification.

The author uses the metaphor of OutSystems building the door and installing the hinges, but leaving the lock up to you. It's a good metaphor because it captures the genuine value the platform provides while being honest about the boundary. The door is real and functional. The hinges work. But an unlocked door is just an invitation.

The practical content covers JWT validation, OAuth flows, and what it means to correctly configure a third-party integration so it isn't accidentally open to the internet. None of this is OutSystems-specific knowledge, which is kind of the point. The platform abstracts the hard parts of building software until it doesn't, and security is one of those places where the abstraction stops and you have to know what you're doing at the protocol level.

There's a broader lesson here that applies to every platform that promises to reduce complexity. Reduced complexity in one dimension often means hidden assumptions in another. OutSystems doesn't expose you to database connection pooling decisions, but it also can't make a good decision about whether your API endpoint should require authentication, because it doesn't know what the endpoint does. That's a judgment call that belongs to the developer, and low-code doesn't change that.

Key takeaways:

  • OutSystems handles API scaffolding and deployment but does not automatically secure your endpoints
  • JWT and OAuth implementation are developer responsibilities, regardless of the abstraction layer used
  • Low-code platforms reduce certain types of complexity but cannot substitute for understanding authentication and authorization fundamentals

Why do I care: This is worth flagging for anyone on a team evaluating OutSystems or similar platforms. The security surface area doesn't shrink just because the code surface area does. If anything, the risk goes up because developers who are new to the platform may not realize where the guardrails end. This is practical knowledge, not theoretical, and the original article is worth reading if your team works with OutSystems integrations.

Nobody Told Me Securing APIs Was My Problem in OutSystems


Why macOS Is Underrepresented in Public AI Research Datasets

TLDR: MacPaw Research found that public AI datasets for GUI automation and UI understanding are heavily skewed toward Windows and web interfaces. To address this, they built GUIrilla, a framework for scalable, automated exploration of Mac desktop UI that can generate training data at scale.

Summary: When you think about the data that trains AI models to understand user interfaces, you probably don't think much about operating system distribution. That assumption is where the problem starts. Most publicly available datasets for GUI understanding, the kind used to train models that can navigate a UI, fill out forms, or test software automatically, were built on Windows and web contexts. macOS, despite its significant share among developers and creative professionals, barely shows up.

MacPaw Research's paper makes the case that this isn't just a coverage gap, it's a structural one. macOS UI behaves differently from Windows UI at the accessibility API level. The element hierarchy is different, the interaction model is different, and the visual design language is different enough that a model trained on Windows screenshots performs poorly on macOS, sometimes surprisingly so. If you're building an AI agent that needs to interact with desktop software, this matters.

GUIrilla is the solution they propose: a framework that can explore macOS applications systematically, click through states, log what it finds, and produce labeled training data without requiring a human annotator for every screenshot. The name is a bit much, but the problem is real and the approach is pragmatic. Automated UI exploration for data generation has been done in mobile testing for years, applying it to desktop AI training data is an obvious extension that apparently nobody was doing at scale for Mac.

The uncomfortable implication is that AI models claiming broad GUI understanding probably have a significant macOS blind spot that won't show up in benchmark numbers if the benchmarks were also built on Windows data. This is the kind of quiet dataset bias that takes years to surface and causes confusing failures in production, especially for teams building developer tooling or creative applications where Macs are common.

Key takeaways:

  • Public GUI AI datasets are heavily biased toward Windows and web, leaving macOS significantly underrepresented in training data
  • macOS accessibility APIs and UI element hierarchies differ enough from Windows that cross-platform transfer learning is unreliable
  • GUIrilla provides an automated framework for systematic macOS UI exploration to generate training data at scale

Why do I care: If you're building any AI feature that needs to understand or interact with desktop UIs, especially tools for developers or designers who skew heavily toward macOS, this dataset bias is directly relevant to your model quality. The GUIrilla framework is worth tracking if you have a need for Mac UI training data. More broadly, this is a useful reminder to always ask whose environment the training data actually reflects.

Why macOS Is Underrepresented in Public AI Research Datasets