The simple answer is because it can't, and the current architecture will probably never be able to. Sure, you can churn out a few Python scripts, but so can anybody with a year or two of...
The simple answer is because it can't, and the current architecture will probably never be able to. Sure, you can churn out a few Python scripts, but so can anybody with a year or two of programming experience. I wish we'd all stop entertaining the hype-men and push back. I hate this timeline.
I think that’s overly dismissive. Have you tried using a coding agent since December or so? True vibe-coding is more of a research project, but a coding agent that’s being directed by a software...
I think that’s overly dismissive. Have you tried using a coding agent since December or so? True vibe-coding is more of a research project, but a coding agent that’s being directed by a software engineer is quite capable of writing the code for you, based on a series of prompts and code review. (You do have to take the lead.)
I don’t think Electron is inherently bad, but if I were going to do a native rewrite, I would definitely find a coding agent useful.
Claude Code is Coding by Stackoverflow at scale, with all the pros and cons that are implied by that. It's at its best when it's searching through code already written for potential issues to...
Claude Code is Coding by Stackoverflow at scale, with all the pros and cons that are implied by that.
It's at its best when it's searching through code already written for potential issues to resolve. It does pretty decent at spitting up random tools for small things.
Example:
Have a web-based vendor application, want to script out test cases. Claude with the Chrome extension grabbed 95% of the relevant data to script out API calls by following a user entering a test case. Having it crawl the vendor's docs fixed the vast majority of missing pieces. Building a tool to do this all from scratch would have been a massive PITA.
It can genuinely flip an awful lot of things into the 'useful' section of the chart.
The problem boils down to the small wins giving false confidence for big things. And it's hard to tell in advance if prompting and refining was a good idea, or if using your grey matter from the beginning would have saved a lot of headaches.
It did spit out a custom SQL formatter for dbeaver with like 30 seconds of work. That alone was worth the price of admission because most standard formatting methods are illegible hot messes when queries get complex.
Edit:
It also is quite adept at searching and combining instructions from said documentation into user-followable steps.
Things I've recently seen Opus 4.6 do really well at: Coding up UI effects where you are truly going for a "vibe". Fixing dependency upgrade errors when you have static analysis and tests to keep...
Things I've recently seen Opus 4.6 do really well at:
Coding up UI effects where you are truly going for a "vibe".
Fixing dependency upgrade errors when you have static analysis and tests to keep it on track.
Aligning the UI of two components. I recently had a page and told it to make an editable version with everything placed in identical locations with identical styling so there's no layout shift switching between the two. The generated code for the editable version was initially terrible and mis-aligned. But I told it to use the Playwright MCP to compare the two versions visually and iterate until they looked identical. After a few iterations of changing line heights, margins, etc. I could flip between the two without any layout shift.
Writing bash scripts. Although it's a little too good at the "${foo%%/*}" stuff which makes it kinda unreadable to mere mortals like me.
Writing tests.
Giving it my bash history log, SSH access with sudo, and having it reverse engineer the setup of a server into an ansible playbook.
Things I've recently seen Opus 4.6 do poorly at:
Queuing events to be processed at an interval. After a couple of iterations I just wrote the 20 lines myself. I was kinda shocked it didn't nail this but I've learned to just write the code myself instead of get frustrated if it can't figure it out after 2 tries. Writing code is fun anyway.
PyQT layouts. After an incredible first shot at setting up a window+controls any further attempts to get it to handle collapsible components (and thus adjust the window height up/down along with that) failed. I think I gave it 15 or so attempts to fix it. Given I'm not familiar with PyQT and didn't want to learn a bunch about it I was much more determined to have the LLM do this for me.
I think it's great at getting something started. It's much nicer to polish up something than to start from scratch. I still read the code. But I have to admit unless I rewrite a lot of it, which I occasionally do, I'm not as familiar with the code after as I would have been if I wrote it myself. I don't understand the AI hype men that have gone full "I don't even read the code anymore". As someone reading the code, it still needs human review.
I think this is overly negative as @skybrian said. AI agents are pretty capable nowadays, though not to the extent the companies making them would like you to believe. In the current term, AI...
I think this is overly negative as @skybrian said. AI agents are pretty capable nowadays, though not to the extent the companies making them would like you to believe. In the current term, AI Agents can be quite capable when they are being lead by a competent software engineer. Andreas Kling of the Ladybird browser project just earlier today posted about how they were able to rewrite their entire JavaScript engine, consisting of a lexer, parser, AST, and bytecode generator, from C++ to Rust by guiding an AI Agent over the course of two weeks. There was also the post a few weeks ago about how Anthropic were able to code up a functional C compiler through Claude.
I use agents in my day-to-day too and I use it to generate a good chunk of my code for me nowadays. I "chat" with it in order to ensure my logic for approaching a problem is generally correct and I let it write that out for me as I focus on the next steps. It's also been incredible at onboarding myself onto new parts of the codebase, given there are context files for the AI to use.
Another answer is: Electron, and embedded web in general, are good technologies. They contain all manner of portable, battle tested components, that make life better, whether it is a human or AI...
Another answer is: Electron, and embedded web in general, are good technologies. They contain all manner of portable, battle tested components, that make life better, whether it is a human or AI developing.
I don’t really see this as some kind of gotcha. This sounds like old heads from the 50s poo-pooing Fortran over programming with punch cards or machine code.
The thing with Electron is that if we set aside its by-default tremendously inflated resource consumption (which IMO is worth discussion on its own), it can only be as good as the app it's...
The thing with Electron is that if we set aside its by-default tremendously inflated resource consumption (which IMO is worth discussion on its own), it can only be as good as the app it's hosting. Unfortunately, the quality of engineering in web apps is on average quite low and is compounded by things like UI design that prioritize branding and looking good in a marketing screenshot over usability. Well built electron apps exist, but they're very much the exception to the rule.
Poor native apps exist too, but most tend towards mediocre rather than outright bad.
You've hit the nail on the head with my two biggest gripes with Electron. The duplication of resources, paired with the security risks of perpetually outdated Electron libraries. Having a...
You've hit the nail on the head with my two biggest gripes with Electron.
The duplication of resources, paired with the security risks of perpetually outdated Electron libraries. Having a system-level Electron that could be hooked into would help.
But web UIs suck. It feels even worse than running a mish-mash of Gnome and KDE apps side by side. While a couple of fair standard patterns emerge, it's up to each individual app to do simple things like work with the existing OS theme.
Outdated Electron frequently stings from a user experience perspective under Linux in particular, resulting in all sorts of misbehavior depending on the user's setup. A prominent example is how VS...
Outdated Electron frequently stings from a user experience perspective under Linux in particular, resulting in all sorts of misbehavior depending on the user's setup. A prominent example is how VS Code was nearly unusuable for users with Nvidia cards using Wayland desktops for a while.
It's tragic how poor the majority of web UIs are. Through a combination of cargo culting certain libraries (React, etc), poor engineering hygiene/practices, general thoughtlessness, and an almost gleeful disregard for performance and optimization, they're nearly all far worse than they need to be.
Tildes' UI feels most like what I think was the last most-consisently-decent era of web UI, which was that of the mid-to-late 00s and maybe "web 2.0". In that era, the good parts of the web that...
Tildes' UI feels most like what I think was the last most-consisently-decent era of web UI, which was that of the mid-to-late 00s and maybe "web 2.0". In that era, the good parts of the web that had proceeded it were refined and JS was used mostly as light enhancement for interactive bits. It focused on working with web browsers and their greatest strengths instead of trying to control as much of the user experience as possible with half-baked replacements for browser functionality.
I’ve done web design for years. I’ve also done some desktop app creation for personal use. I’d never think to deploy the web design tools for application creation. That’s one of the things that...
I’ve done web design for years. I’ve also done some desktop app creation for personal use. I’d never think to deploy the web design tools for application creation. That’s one of the things that frustrated me about native Swift creation, the way that Apple set up UI creation is so similar to website creation that it really turns me off the whole experience.
Yeah SwiftUI can work alright for mobile UI, particularly for simpler cases, but falls apart for more highly functional or complicated apps and is exceptionally poorly fit for desktop use. Quite...
Yeah SwiftUI can work alright for mobile UI, particularly for simpler cases, but falls apart for more highly functional or complicated apps and is exceptionally poorly fit for desktop use. Quite frequently either UIKit on iOS or AppKit on macOS are the correct tool to reach for, even if they're not the least bit trendy.
Does discord screen share not generally work on linux? I had UI issues with the snap version, but never streaming. Switched to the flatpak and after enabling GPU acceleration it has worked pretty...
Does discord screen share not generally work on linux? I had UI issues with the snap version, but never streaming. Switched to the flatpak and after enabling GPU acceleration it has worked pretty much perfect.
The question is: food for whom? I mean, even someone that can't code, like myself, can see the advantages in the “writing once, run everywhere” nature of Electron, but as a user, I often prefer a...
The question is: food for whom? I mean, even someone that can't code, like myself, can see the advantages in the “writing once, run everywhere” nature of Electron, but as a user, I often prefer a so so native app than a good-ish Electron one. And it's not like Anthropic is a scrappy startup that can't afford a few more specialized developers… right?
Honestly at this point I’d only really care on macOS. Windows is such a mess that Electron functions better than native IMO. On Linux, what does native even mean? An app written in gtk isn’t...
Honestly at this point I’d only really care on macOS. Windows is such a mess that Electron functions better than native IMO. On Linux, what does native even mean? An app written in gtk isn’t native on KDE desktop environments and vice versa. It’s so often you see gtk or qt apps look disgusting on one or the other, especially if you have a lot of custom theming. And Linux on desktop is already beyond niche, it’s even worse when you split by DE.
For Linux it's nice when services are built to support multiple clients. Telegram for example which has its core functionality in a library has clients written with Qt, GTK, and AppKit among others.
For Linux it's nice when services are built to support multiple clients. Telegram for example which has its core functionality in a library has clients written with Qt, GTK, and AppKit among others.
For that exact reason I mostly just won't use any GTK applications until I've tried literally every other QT option I could find. Though the look and feel integrations between the two have gotten...
For that exact reason I mostly just won't use any GTK applications until I've tried literally every other QT option I could find.
Though the look and feel integrations between the two have gotten exponentially better within the last 5 years.
The simple answer is because it can't, and the current architecture will probably never be able to. Sure, you can churn out a few Python scripts, but so can anybody with a year or two of programming experience. I wish we'd all stop entertaining the hype-men and push back. I hate this timeline.
I think that’s overly dismissive. Have you tried using a coding agent since December or so? True vibe-coding is more of a research project, but a coding agent that’s being directed by a software engineer is quite capable of writing the code for you, based on a series of prompts and code review. (You do have to take the lead.)
I don’t think Electron is inherently bad, but if I were going to do a native rewrite, I would definitely find a coding agent useful.
Claude Code is Coding by Stackoverflow at scale, with all the pros and cons that are implied by that.
It's at its best when it's searching through code already written for potential issues to resolve. It does pretty decent at spitting up random tools for small things.
Example:
Have a web-based vendor application, want to script out test cases. Claude with the Chrome extension grabbed 95% of the relevant data to script out API calls by following a user entering a test case. Having it crawl the vendor's docs fixed the vast majority of missing pieces. Building a tool to do this all from scratch would have been a massive PITA.
It can genuinely flip an awful lot of things into the 'useful' section of the chart.
The problem boils down to the small wins giving false confidence for big things. And it's hard to tell in advance if prompting and refining was a good idea, or if using your grey matter from the beginning would have saved a lot of headaches.
It did spit out a custom SQL formatter for dbeaver with like 30 seconds of work. That alone was worth the price of admission because most standard formatting methods are illegible hot messes when queries get complex.
Edit:
It also is quite adept at searching and combining instructions from said documentation into user-followable steps.
Things I've recently seen Opus 4.6 do really well at:
"${foo%%/*}"stuff which makes it kinda unreadable to mere mortals like me.Things I've recently seen Opus 4.6 do poorly at:
I think it's great at getting something started. It's much nicer to polish up something than to start from scratch. I still read the code. But I have to admit unless I rewrite a lot of it, which I occasionally do, I'm not as familiar with the code after as I would have been if I wrote it myself. I don't understand the AI hype men that have gone full "I don't even read the code anymore". As someone reading the code, it still needs human review.
I think this is overly negative as @skybrian said. AI agents are pretty capable nowadays, though not to the extent the companies making them would like you to believe. In the current term, AI Agents can be quite capable when they are being lead by a competent software engineer. Andreas Kling of the Ladybird browser project just earlier today posted about how they were able to rewrite their entire JavaScript engine, consisting of a lexer, parser, AST, and bytecode generator, from C++ to Rust by guiding an AI Agent over the course of two weeks. There was also the post a few weeks ago about how Anthropic were able to code up a functional C compiler through Claude.
I use agents in my day-to-day too and I use it to generate a good chunk of my code for me nowadays. I "chat" with it in order to ensure my logic for approaching a problem is generally correct and I let it write that out for me as I focus on the next steps. It's also been incredible at onboarding myself onto new parts of the codebase, given there are context files for the AI to use.
Another answer is: Electron, and embedded web in general, are good technologies. They contain all manner of portable, battle tested components, that make life better, whether it is a human or AI developing.
I don’t really see this as some kind of gotcha. This sounds like old heads from the 50s poo-pooing Fortran over programming with punch cards or machine code.
The thing with Electron is that if we set aside its by-default tremendously inflated resource consumption (which IMO is worth discussion on its own), it can only be as good as the app it's hosting. Unfortunately, the quality of engineering in web apps is on average quite low and is compounded by things like UI design that prioritize branding and looking good in a marketing screenshot over usability. Well built electron apps exist, but they're very much the exception to the rule.
Poor native apps exist too, but most tend towards mediocre rather than outright bad.
You've hit the nail on the head with my two biggest gripes with Electron.
The duplication of resources, paired with the security risks of perpetually outdated Electron libraries. Having a system-level Electron that could be hooked into would help.
But web UIs suck. It feels even worse than running a mish-mash of Gnome and KDE apps side by side. While a couple of fair standard patterns emerge, it's up to each individual app to do simple things like work with the existing OS theme.
Outdated Electron frequently stings from a user experience perspective under Linux in particular, resulting in all sorts of misbehavior depending on the user's setup. A prominent example is how VS Code was nearly unusuable for users with Nvidia cards using Wayland desktops for a while.
It's tragic how poor the majority of web UIs are. Through a combination of cargo culting certain libraries (React, etc), poor engineering hygiene/practices, general thoughtlessness, and an almost gleeful disregard for performance and optimization, they're nearly all far worse than they need to be.
I think the Tildes web UI is pretty good though.
Tildes' UI feels most like what I think was the last most-consisently-decent era of web UI, which was that of the mid-to-late 00s and maybe "web 2.0". In that era, the good parts of the web that had proceeded it were refined and JS was used mostly as light enhancement for interactive bits. It focused on working with web browsers and their greatest strengths instead of trying to control as much of the user experience as possible with half-baked replacements for browser functionality.
Specifically referring to the 'app in a website' model. The kind which, in the before times, would just be a desktop application.
I’ve done web design for years. I’ve also done some desktop app creation for personal use. I’d never think to deploy the web design tools for application creation. That’s one of the things that frustrated me about native Swift creation, the way that Apple set up UI creation is so similar to website creation that it really turns me off the whole experience.
Yeah SwiftUI can work alright for mobile UI, particularly for simpler cases, but falls apart for more highly functional or complicated apps and is exceptionally poorly fit for desktop use. Quite frequently either UIKit on iOS or AppKit on macOS are the correct tool to reach for, even if they're not the least bit trendy.
Yeah, Electron is great for portable code- just ask the Discord devs.
Does discord screen share not generally work on linux? I had UI issues with the snap version, but never streaming. Switched to the flatpak and after enabling GPU acceleration it has worked pretty much perfect.
I mean, I never learned Fortran.
You probably haven’t touched a punch card in a few years though.
The question is: food for whom? I mean, even someone that can't code, like myself, can see the advantages in the “writing once, run everywhere” nature of Electron, but as a user, I often prefer a so so native app than a good-ish Electron one. And it's not like Anthropic is a scrappy startup that can't afford a few more specialized developers… right?
Honestly at this point I’d only really care on macOS. Windows is such a mess that Electron functions better than native IMO. On Linux, what does native even mean? An app written in gtk isn’t native on KDE desktop environments and vice versa. It’s so often you see gtk or qt apps look disgusting on one or the other, especially if you have a lot of custom theming. And Linux on desktop is already beyond niche, it’s even worse when you split by DE.
For Linux it's nice when services are built to support multiple clients. Telegram for example which has its core functionality in a library has clients written with Qt, GTK, and AppKit among others.
For that exact reason I mostly just won't use any GTK applications until I've tried literally every other QT option I could find.
Though the look and feel integrations between the two have gotten exponentially better within the last 5 years.