TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

What design tools get wrong

199 点作者 deanalevitt大约 6 年前

10 条评论

doitLP大约 6 年前
Sounds like the author wants his tools to be as fully featured as the code that will embody the resultant design. In that case I would recommend learning more code instead of relying on a proxy that will never be as flexible.<p>The best designers I’ve worked with not only understand their own domain but the possibilities and limitations of how it will be executed, because they are also developers.
评论 #19647073 未加载
评论 #19648643 未加载
评论 #19646346 未加载
评论 #19646368 未加载
评论 #19647603 未加载
评论 #19646729 未加载
评论 #19647007 未加载
评论 #19659578 未加载
评论 #19655672 未加载
评论 #19646516 未加载
评论 #19650902 未加载
评论 #19651935 未加载
golergka大约 6 年前
It seems that author advocates for design tools to become more and more like developer tools - a notion that I, as a developer, can totally get behind.<p>However, in my 12 years of experience in game development, many people who are world-class designers and artists don&#x27;t have the same mental model as developers. There are a lot of &quot;technical art&quot; issues that in the end, you&#x27;d rather handle on a developer&#x27;s side. I just don&#x27;t think that a person who spends his time thinking about character&#x27;s emotion, colour balance, human anatomy and other art-related issues is in the same mind space to think about technical issues like which UI containers should be scaled on what rules (full-screen or safe area? hugging the screen outside or inside?) for different screen sizes, how things should be composed from layers and animated, how assets can be converted from a static image to a resizable one, how a giant image can be cut into a 9-slice (or in a more complicated way) to save texture budget, how can we reuse already existing assets without importing another image that is very, very similar, how different kind of gradients behave with not-pixel-perfect scaling and crunch compression (and I didn&#x27;t even go into 3d!). I tried empowering designers and artists so they would make these decisions, but they hated it and were miserable - so in the end I&#x27;d rather get a static, single-sized PSD and do all that work myself.<p>All of this, of course, are just my 2 cents from a specific industry and with a very specific kind of people in mind - I&#x27;m not trying to impose these views on any designers and artists who want to get into the technical art side and would be thrilled to see more and more individuals who can be productive and happy in this kind of hybrid role. But as a matter of fact, these people are very, very rare and we shouldn&#x27;t expect most artists to be like that.
评论 #19647406 未加载
评论 #19646077 未加载
评论 #19646651 未加载
评论 #19650169 未加载
matthewhager大约 6 年前
We created exactly what you are looking for at <a href="https:&#x2F;&#x2F;shift.studio" rel="nofollow">https:&#x2F;&#x2F;shift.studio</a>. You design “systems” which are web components built in React (though as a designer, this is abstracted away from you). The components have variants, state, data, and we have a fully featured media query system to help you handle responsive design. Finally, we’re fully integrated with NPM so you can pull code in if you want and add functionality to your design system.<p>We will soon add the feature to expose your design system as an NPM package so that developers can install the system into their project and the component creation can be the domain of the designer with the application structure&#x2F;creation being the domain of the developer.<p>This is a problem that can be solved but it can’t be half-baked solutions. It has to allow designers to fully create all states of a component and even work on components with live data flowing through.<p>We are in closed beta but you can view videos of how Shift works here: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLl4_DbGKML_Jb2Wq5pEGWgPznK6mUj0tC" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;playlist?list=PLl4_DbGKML_Jb2Wq5pEGW...</a>
phaedryx大约 6 年前
I worked at an agency with designers. We (web developers) convinced the designers to use Sketch for the stuff that they did for us. It saved us a ton of time over receiving Photoshop and Illustrator files to work with (the traditional &quot;design tools&quot;).<p>Sure, things could be improved, but I love that we have Sketch and Figma now.
评论 #19646604 未加载
comis大约 6 年前
I could nitpick the authors points, but honestly this article just boils down to &quot;Design tools need more features!&quot; which I generally agree with. We&#x27;re living in nice times for design tools though - Figma&#x2F;Sketch are leading the pack and moving extremely fast.<p>We&#x27;re no longer in the dark ages of waiting 5+ years for Adobe to implement some basic feature (like being able to round corners on a rectangle). Well, I guess if you&#x27;re for some reason using xD you&#x27;re still waiting a comically long amount of time between significant releases, but that&#x27;s your own fault.
评论 #19646448 未加载
评论 #19646871 未加载
anoffsinger大约 6 年前
I recommend you try Figma, as it addresses and solves most of the gripes in your post.
poof_he_is_gone大约 6 年前
I think that design tools are slowly but surely zeroing in on this. The updated versions of Sketch, Figma, and InVision can support responsive layouts, and all of them are moving from being able to create static designs, to interactive prototypes. There are several plugins and workflows out there that will convert your designs to useable code, and it is only a matter of time before this software is doing that natively and representing the full stack.
erikpukinskis大约 6 年前
Somewhat off topic, but this gets at an issue with “components” of all types that I’ve been wanting to get off my chest:<p>&gt; <i>Design libraries are also limited in the type of things they share: just components or symbols. This works great if all your design work is just clicking together new screens with the same components, but anything new will see designers clicking into components and copying over things like colors, font variants and checking spacing just to copy that over into new components. When you copy over things, you’ll invariably make mistakes (we’re just human after all).</i><p>Ideally, a component system means you’re black boxing some function.<p>Unfortunately every component system I’ve ever seen has a hard boundary at some “material” transition:<p>A UI drawing that can be used inside a design program<p>A React component is bounded at the DOM and can’t handle server side concerns<p>A CSS component is bounded at styles and can’t handle HTML concerns<p>A middleware component that handles authentication, but can&#x27;t reach outside the routing phase.<p>etc<p>Inevitably then, you end up having two or more tightly coupled components:<p>A front end component + the server API that it knows how to talk to<p>A little HTML widget + a microservice that it feeds with it’s own persistence<p>A container for wrapped content + a little middleware meant to be added to the app that serves the content<p>A button + a delayed job + an email template to get sent when it&#x27;s done<p>etc<p>In order to do this, instead of just having one module with a tight set of concerns inside it, you have to implement some of your concerns in two places, and you also have to map data into the component interface, and then back out again. In some cases this can be 4x the complexity (&quot;code&quot; vs. &quot;code + write to component interface + decode component interface + variant of code on other side of interface&quot;).<p>If the component could span both domains, it could just move the data exactly where it needed to go, as efficiently as possible, since the data is all internal to the component.<p>The conclusion I’ve come to is something like &quot;components want to be free.&quot;<p>I.e. components want to have concerns that can span the entire stack, and implement procedures in arbitrarily disparate kinds of source locations.<p>This of course precludes ALL of the component systems which are confined to a specific material domain. It means the boundary of a component has to look something like arbitrary source code. Component interfaces can’t conform to a single template.<p>That raises the question “what is a component at all?” If the boundary of my component is just a set of function calls, it’s just a module. How is it a component?<p>And maybe it’s not. Maybe components are a local maximum in code cleanup, and I’m advocating people move past them and just write really excellent single-concern modules instead.<p>I don’t know. This is as far as I’ve thought it through.<p>(I do maintain an NPM module called browser-bridge that lets me build arbitrary client&#x2F;server components, along an event sourcing library called a-wild-universe-appeared for doing persistence in an isomorohic way, and then something called bridge-module for getting dependencies in the browser... All of which let me experiment with what I&#x27;m describing, but those are all in a pre-1.0 mostly beta state. The basic interfaces are all stable though.)
评论 #19648979 未加载
评论 #19648354 未加载
marcintreder大约 6 年前
I think the underlying premise of this excellent article is that design tools have to get closer to the capabilities of web technologies in order to bring much needed realism to the design process.<p>This is exactly what still gets me going after nearly 10 years working on design tools (I co-founded UXPin back in 2010). I&#x27;m so glad that more people in the industry notice it!<p>Majority of the popular design tools (Sketch, Figma, InVision Studio, XD...) work in a 30 year old paradigm of image based–design tooling (originally created for early vector and raster &quot;creative&quot; tools that were never meant to be used to design software interfaces!). In this paradigm the output of a design tool is an illustration of the final product that has no relation to the reality of code. The rendering is different, the interactions are just slide-based simulations, the ability to describe states is nonexistent. To get more down to earth - those tools can&#x27;t even render a simple text field or a checkbox!<p>And yes – they&#x27;re getting better and better, but ultimately getting around the limitations of their paradigm is impossible. At the end of the day those tools are perfect for drawing icons and illustrations, but really bad at creating, for example, a working prototype of a form field with validation.<p>That&#x27;s why a bunch of design tooling rebels (UXPin, Framer X, Modulz, Interplay, Shift...) started to work on code–based design tools. In this paradigm the output of a design tool is rendered from html&#x2F;css&#x2F;js code, but designers don&#x27;t necessarily need to know how to code. Majority of UXPin users don&#x27;t even know that they&#x27;re prototyping interfaces with advanced JavaScript :).<p>Within code–based paradigm the limitations of image–based tools do not exists.<p>In reference to the article here are some features present in UXPin (and some others just to illustrate my point): - states of elements (every element can have multiple states and variants, originally we&#x27;ve built it in 2013. The new version was launched last year). - conditional interactions - javascript expression (from advanced math, regular expressions to operations on strings - in UXPin designers can build really advanced prototypes) - context awareness (prototype can be aware of the os&#x2F;browser that is used for previewing or e.g. the size of the screen and conditionally render the right state of elements) - accessibility linters - import and synchronization of production React.js code (in beta, we&#x27;re calling it UXPin Merge) - access to external APIs (you can, for example, build prototypes that can interact with smart devices)<p>None of that is possible in the old paradigm! Of course the giants of the design industry don&#x27;t want you to know it, so they invest tens of millions of dollars into flashy marketing:)<p>Some things that Kilian mentioned are still missing, but we (and others!) are working on them.<p>Hope this is providing some context to the state of the design tooling industry.<p>Ps. Fun fact - Figma branded themselves as the first design tool with real time collaboration. We have it since 2011 and... it was also called multiplayer design :)
tomger大约 6 年前
I don’t think the author has spent a relevant amount of time with Figma