News for hackers. Stuff that matters.
Re:JetBrains Ring UI by lxe on Friday October 07, 2022 @02:23PM (#33125092)
Component UI libraries have converged towards providing the most basic building blocks instead of creating higher levels of abstraction, which I personally think is a bad trend.

You could build a very complex UI with Ext.JS back in 2010 with a lot less code and very little time, while it takes a while lot more work to produce even something relatively basic with modern UI frameworks.

I really don't care about how customizable your spinner is. I want to use it in common contexts with as little code as possible. Heck, at least provide me with a kitchen sink so I can copy and paste common patterns.

Re:JetBrains Ring UI by brundolf on Friday October 07, 2022 @02:35PM (#33125230)
What's shifted is that product/design want the UI to be distinctive to the company and its brand. So each company needs its own foundational UI library, or at least a highly-customizable third party one
Re:JetBrains Ring UI by jcz_nz on Friday October 07, 2022 @05:01PM (#33126800)
For some apps. For internally-facing admin for example tools we want a minimal learning curve and readily recognisable, sign posted models. It needs to look like stuff you already know, down to icons and ux behaviour.
Re:JetBrains Ring UI by woah on Friday October 07, 2022 @02:40PM (#33125291)
> You could build a very complex UI with Ext.JS back in 2010 with a lot less code and very little time

What's stopping you from doing that now?

Re:JetBrains Ring UI by lxe on Friday October 07, 2022 @03:44PM (#33126027)
Hype
Re:JetBrains Ring UI by manmal on Friday October 07, 2022 @02:34PM (#33125219)
An approach I like is to provide basic components (i.e. a toolkit) and higher order components that can be copied into the project as required. This allows maximal flexibility while also providing the possibility to DRY things up in your own codebase.

Tailwind and Tailwind components achieves this for example. Web components also come to mind.

Re:JetBrains Ring UI by ethbr0 on Friday October 07, 2022 @02:25PM (#33125104)
Developers care about functionality.

Designers care about uniqueness.

Re:JetBrains Ring UI by yellsatclouds on Friday October 07, 2022 @02:28PM (#33125137)
and their bosses care about both developers and designers being replaceable cogs in their company... else the bus accident test fails
Re:JetBrains Ring UI by josh_p on Friday October 07, 2022 @02:57PM (#33125469)
Component libraries like Telerik and Infragistics still seem to be going strong in 2022.
Re:JetBrains Ring UI by Philip-J-Fry on Friday October 07, 2022 @03:43PM (#33126005)
Supplying the building blocks is how you're able to compose them into something different.

If all the UI libraries just gave you highly abstracted prebuilt components with little to no customisability, then you wouldn't use them. Because as soon as you want to do something different, you'd have to write your own or find someone else's.

Re:JetBrains Ring UI by jahewson on Friday October 07, 2022 @03:49PM (#33126076)
Being limited to highly abstracted libraries leads to worse UI because you have to shoehorn your app into the limited set of forms the library allows you to express.

If you just want some boilerplate UI in a hurry, this is fine (it’s actually better) but it sets an upper bound for how good the UI can ever be and that’s a problem for serious professionals.

Of course most UI is horrible but that’s true no matter what framework you give them. There’s always somebody using checkboxes as radio buttons.

Re:JetBrains Ring UI by Kuinox on Friday October 07, 2022 @04:05PM (#33126272)
Funny how this argument was opposed against libraries in the early day of programming.
Re:JetBrains Ring UI by jahewson on Friday October 07, 2022 @09:44PM (#33129071)
I think it’s an argument for small, composable libraries. Think Go’s std instead of Java’s Spring.
Re:JetBrains Ring UI by Kuinox on Saturday October 08, 2022 @01:49AM (#33130104)
UI components can be small, and customizable enough to do anything.

The HTML is an excellent exemple at that.

You are never "limited" by highly abstracted librairies since at any moment, you can write your fully customized one.

And no, a customized components is not immediately better.

Good Library UI components have, i18n, accessibility, and good mobile UX.

The comment "I can do a decent calendar in react in a few minutes" shows exactly this: it's infuriating to use on mobile.

Re:JetBrains Ring UI by kaba0 on Saturday October 08, 2022 @06:18AM (#33131168)
The web is exactly a bad argument, it composes terribly. You can make n*m divs for the days for a calendar widget, it won’t be recognized as a date selector. While swing, or even earlier GUI iterations realized that inheritance is a very sane model for GUI frameworks.
Re:JetBrains Ring UI by Kuinox on Saturday October 08, 2022 @07:23AM (#33131409)
You know you can inherit the HTML date picker right?

... right ?

Re:JetBrains Ring UI by ulimn on Saturday October 08, 2022 @09:18AM (#33132035)
I actually don't know what you mean. Can you please tell me?
Re:JetBrains Ring UI by Kuinox on Saturday October 08, 2022 @10:33AM (#33132601)
Webcomponents allow inheriting html built in elements.

https://developer.mozilla.org/en-US/docs/Web/Web_Components/...

> Customized built-in elements inherit from basic HTML elements.

Re:JetBrains Ring UI by ulimn on Saturday October 08, 2022 @12:29PM (#33133649)
Thanks. I always wanted to look into web components, sounds interesting.
Re:JetBrains Ring UI by dustingetz on Friday October 07, 2022 @04:28PM (#33126517)
datasync / backend-for-frontend problem
Re:JetBrains Ring UI by savingGrace on Friday October 07, 2022 @05:45PM (#33127256)
"You could build a very complex UI with Ext.JS back in 2010 with a lot less code and very little time" I have not encountered a more complex and verbose library than ExtJS. I would never in a million years say "very little time" with ExtJS. I did not enjoy my time with it at all. And that was a whole lot of time, since it took forever to do the simplest of things.
Re:JetBrains Ring UI by markmiro on Friday October 07, 2022 @08:54PM (#33128806)
I've had the same frustration. I want to go from intent to a UI as quickly as possible.

My intuition about solving this is to create components where instead of a select and a radio button being separate components, they're the same component with basically the same API.

And instead of deciding on a spacing between components, you just get spacing more or less automatically so everything looks good by default.