All programming is UI programming
July 31, 2022Whethere you're building a mobile app, a CLI tool, a REST API, or an SDK, you're building a UI, and you should consider the user of your code.
These days it seems a lot of people believe that “UI programming” is a special skill that not everyone has.
If what they really mean is that “GUI programming” is a special skill, they might be right. I’ve certainly dabbled in various forms of GUI programming (mostly, but not excluslively, web-based).
“Okay, but who uses non-graphical UIs these days?” you may be thinking.
Well. You do. All the time :)
A UI is how your software interfaces with the user. Who’s the user?
Whoever uses the code.
If you’re building a REST API, then the request paths, and HTTP methods and status codes are the UI.
If you’re building an SDK, then the function names and argumenst are the UI.
If you’re building a CLI tool, then the CLI is the UI.
Each of these types of programming relies on a different set of UI-related skills, but the important thing is to remember that they are all UIs of a sort. And therefore, they all deserve keeping your user in mind, as you’re coding.
Adventures in DevOps 125: The Pull Request Paradox with Yishai Beeri
Yishai Beeri of LinearB discusses strategies to improve flow of PRs and code review with smarter tooling.
Stupid config trick: Passwords as URLs
How can we unambiguously represent a password safely for shell, YAML, JSON, etc, and also know if it needs to be unescaped?