问HN:开发者如何培养设计直觉?
正如标题所说:作为一名程序员和想要成为独立创业者的人,我常常发现自己在思考应用架构时比关注用户体验和满意度的实际内容要多得多。比如前端和后端之间的API、组件的布局、我需要哪些数据结构、数据库查询回答了哪些问题。应该引入哪些抽象,以及在开发生命周期的早期阶段引入这些抽象,如何组织文件以避免后期混淆。
另一方面,当我构建某样东西时,我是为了客户的满意度。任何工具或产品都应该解决某个问题。我可以草拟一个问题陈述,并且我或多或少能够协调代码——如何捕捉问题、解决问题并传递结果。
但展示设计——这对我来说是主要问题。是的,我可以使用Figma。是的,现在有一些不错的AI工具可以生成设计,但它们大多输出的都是相似的东西,UI充其量也只是中等水平。感觉一旦我接触到设计,我就开始觉得这并不是我喜欢的,常常又回到我喜欢的东西——应用架构、所有的连接以及我已经描述过的内容。线框图是一回事,但当涉及到更高保真度的设计时,我最终还是依赖于像shadcn这样的预打包UI工具和库。
我希望能够内化一些经验丰富的设计师所拥有的直觉,那些已经做了多年的设计师,知道如何布局。
我也明白,这就像一个设计师问开发者如何成为开发者,而他只知道开发者知识的10%,但仍然能够交付作品。不过我会有点大胆地说,视觉设计和我们用来创建它的工具在维度上仍然少于软件开发。
我想从我的帖子中也可以看出,我消费了大量内容并参加了设计课程,但没有什么真正记住(即使在实践中应用了一些)。如果你是一名同时从事设计的开发者,你会给出什么建议?有没有一些基础规则可以贴在墙上,作为你从某个角度深入设计之前的参考?你通常是如何验证设计的?特别是对于数据密集型的视图,或者用户需要工具来完成工作的情况,以便他们不需要点击太多次就能达到目标。
查看原文
As the title says: as a programmer and a wanna-be solopreneur, I often catch myself thinking way more about app architecture than about what actually matters for the user experience and satisfaction. Stuff like the API between frontend and backend, how the components are laid out, what data structures I’ll need, which questions the database queries answer. Which abstractions to introduce and how early in the development lifecycle, how to organize files so I do not confuse myself later.<p>On the flip side, when I build something, I am doing it for customer satisfaction. Any tool or product should solve someone’s problem. I can sketch a Problem Statement. And I can more or less orchestrate the code - how to capture the problem, solve it and pass the results along.<p>But showing it — that is the main problem for me. Yes, I can work in Figma. Yes, there are decent AI tools for generating designs now, but they mostly spit out the same thing. And a UI that looks average at best. It feels like as soon as I touch design, I start thinking it is not quite what I like and I often drift back to what I do like — app architecture, how everything connects and all that I already described. Wireframes are one thing, but when it gets to higher fidelity design, I end up leaning on pre-packaged UI tools and libraries like shadcn and similar stuff.<p>I would love to internalize at least a bit of the intuition that seasoned designers have, the folks who have done this for years and know how to lay things out.<p>I also get that this is like a designer asking a developer how to become a developer while knowing only 10% of what devs know and still shipping. But I will be a bit bold and say that visual design and the tools we have to create it still have fewer dimensions than software development.<p>I think it is also clear from my post that I have consumed tons of content and taken design courses, but nothing sticks (even after applying some to practice). If you are a developer who also designs, what advice would you give? Are there any foundational rules you can stick on the wall and lean on before you dive into a design from one angle or another? And how do you usually validate a design? Especially for views that are data heavy or where the user needs tools to get the job done, so they do not have to click too much to reach a goal.