Hacker News
points by chasd00 2 days ago | 0 comments
The good thing is AI enabling web developers to write native apps.
[–] jarjoura 2 days ago
Most electron projects exist because engineering organizations couldn't afford to hire platform specialists for every platform they want to run on.
[–] andix 2 days ago
Also most native UI frameworks don't provide the primitives for modern UI. It's mostly just standard UI elements, sometimes with the possibility to theme them.

But most frameworks don't come even close to CSS and all the possibilities to create custom controls. It often requires to build everything from scratch in code, which is really hard for more complex layouts.

[–] nottorp 2 days ago
One could reply that it's a feature, since native UIs are more uniform and with less surprises you can concentrate on whatever the fuck you're doing instead of wondering what this app's designer was smoking.
[–] andix 1 day ago
Depends on the UI framework. Most frameworks don't have enough features to make the UI actually good. It's not even about looks, much more about layout. CSS is really good with conditional layout: hide something and everything reflows around it, responsive layout (not just mobile, but also when making app windows smaller/larger). Typography is another issue with a lot of native UI frameworks. Even adaptive DPI support is not yet easy with most native frameworks.

Also things like accessibility. It's quite easy to make web ui accessible, much harder to do it with custom native control.

[–] Telaneo 2 days ago
Maybe they should take the hint and not make a modern UI, given where UIs like that have taken us.
[–] HoldOnAMinute 2 days ago
There were cross-platform C/C++ libraries in the late 80's to early 90's like Visix Galaxy. However, it was not free - far from it.

We developed on Windows NT and deployed onto HP/UX and Solaris.

[–] nottorp 2 days ago
Uh Qt is still around. Licensing might be as bad as this Visix Galaxy though these days.
[–] tcfhgj 2 days ago
certainly not valid for the most used electron projects
[–] tmpz22 2 days ago
Is the average web developer benefitting from vibing languages they are not at all fluent with?

A bit like a translator who doesnt speak the language but has Google translate and a few beers in them right?

For example, is there still a massive .clone() problem in LLM generated Rust?

[–] cloverich 2 days ago
I re-wrote one of my apps in Swift. I don't know Swift. It's been fun. When it gets stuck I look at the code; I have it teach me via analogy to the e.g. mobx/react concepts I do know. In some cases I've improved the LLMs code after learning how something works. In others I work it more like an informed PM - ok the sidebar opening is slow but... its about 10x faster in my electron version. How is the sidebar "mounted" or rendered? I dump tricks I know from web dev and ask how analogues; sometimes that breaks its anti-patterns. Other times I throw constraints I don't know much about - "This is a native version, can we aim to make it 3x faster to start-up? How".

Personally I was surprised how quickly I surpassed my original code, feature wise. Will it stand the test of time? Too early to tell - need to see if I'm still using the native version of the app in a year. But its been more fun and informative - and fast - than I'd expected.

[–] arecsu 2 days ago
This is the way. I don't know why it's hard for other people to figure out this process.
[–] tmpz22 2 days ago
Right fun is great but I'm speaking from a professional context. Examples should be production code at legitimate businesses.

For what it's worth I wholly agree with your point and that mirrors the personal project I have. But making personal projects a bit more fun and fluent is not the $10T proposition being championed at the professional level.

[–] mahboi 2 days ago
Web devs already barely understood their tools. CSS was the closest thing to vibecoding before AI could write code.
[–] nozzlegear 2 days ago
You're painting with a very wide brush.
[–] bigstrat2003 2 days ago
I mean, they were always able to. They just were too lazy to do it and didn't care about doing a good job enough to overcome that laziness.
[–] satvikpendem 2 days ago
You know what they meant. This is the same argument that artists used when AI image generation came out, it's not very helpful. Being able to do something and actually doing it are different and we all benefit when web app makers rewrite their apps into native languages.
[–] pjmlp 2 days ago
Some of us are long enough in the business, to know that having Web development skills doesn't preclude having native development skills.
[–] satvikpendem 2 days ago
Maybe that was true in the past but it has definitely not been the case for the past 15 or 20 years for web developers who actually don't know anything about native development.
[–] pjmlp 2 days ago
Well if you put it that way, some of them don't even know anything about the browser technology that powers their JavaScript framework used to generate static content.
[–] satvikpendem 2 days ago
That is correct.
[–] HoldOnAMinute 2 days ago
Your use of "lazy" here really comes off as "ableist".

"I can do it, and you didn't do it, therefore you must be lazy, because I certainly am not lazy"

What's lazy is not diving into the reasons that people may or may not do things.

[–] bccdee 2 days ago
So, you're saying that the person you're responding to is really saying, "Developers are too disabled to write native applications"? No, that's nonsense. "Laziness" is not the reason for Electron applications, but neither does it implicate disability in this context.

Incidentally, I think it's kind of ableist to toss around the concept of ableism this lightly. Disability is a set of concrete barriers which go unacknowledged and a set of real accommodations which go unimplemented. Disability activism entails acknowledging those barriers and implementing those accommodations; it does not entail the idea that everyone is always trying their best and nobody is ever negligent.

[–] gib444 2 days ago
Create a problem (RAM shortage), sell a solution (AI tools to migrate). Awesome