Designing with LLMs: Rethinking code, functionality, and user interfaces
Large Language Models (LLMs) are infiltrating software systems in transformative ways: not only do they write code, but they are replacing traditionally deterministic functions with probabilistic behavior. Additionally, they are integrated into the user interface alongside conventional UI components.
This talk will explore the architectural and UX implications of this shift. What happens when part of your logic becomes unpredictable? When should an LLM replace traditional logic, and when should it augment it? How can we design user interfaces that give users control, visibility, and confidence when interacting with such systems?
Based on real-world integrations and emerging design patterns, we will outline actionable principles for:
- Structuring LLM components within a codebase
- Designing interfaces that support recoverability, transparency, and and alignment with user goals
This talk aims to provide both developers and designers with a framework to integrate LLMs effectively, opening the debate about the trade-offs involved in bringing generative models into modern software.