5 ms·
having faster processors, is what's wrong with our computing industry in general. processors on laptops | desktops have become 1000x faster, but has the softwar
by dzonga 7y ago
having faster processors, is what's wrong with our computing industry in general. processors on laptops | desktops have become 1000x faster, but has the software kept up.
no software has gotten slower by the ages. Apple, Qualcomm, Intel can make as much faster processors with x cores, but do we have software able to utilize those, eh! run a JS heavy site | app and you see most processors heat up these days whether mobile or desktop.
most programming languages can't easily delegate work to cores with smoothness like how Erlang n Elixir do it. in Python threads, were a nightmare but now with concurrent futures or dask at least we can utilize all cores.
tldr - we need to make faster software
- DeathArrow 7y ago>tldr - we need to make faster software Just use compiled, strongly typed languages. No: Javascript, Python, PHP, Ruby Yes: Java, C#, C, C++, Rust.
- na85 7y agoIt's not even "faster software" so much as eliminating the culture of Developer Convenience at the expense of User Experience. That's what got us Electron. I've actually seen comments on HN unironically describing the web as "the perfect app platform". Unfortunately, the majority of users seem conditioned to accept software with awful performance, so there's no impetus for developers to upgrade their skills.
- jarjoura 7y agoDon't worry, the future is wearables and more efficient mobile phones. Electron just won't run on your Apple Watch.
- saagarjha 7y agoThe only reason Electron isn't on your Apple Watch today is because of App Store Review.
- jamesgeck0 7y agoThe mobile equivalents of Electron (PhoneGap/Cordova/Ionic) are already extremely popular.
- indymike 7y ago"No one will ever need more than 640K of RAM." - Definitely NOT Bill Gates.
- tracer4201 7y agoNever used electron but I did see threads on how it’s very bloated. Are there other issues?
- thu2111 7y agoElectron is Chrome and Chrome itself is pretty tightly optimised for what it does. The issue isn't actually Electron so much as using a platform designed for typesetting for making complex GUI apps, a task for which it was never designed and isn't particularly good at. But. That said. Whilst I'm no big fan of web apps, there are good reasons they're so prevalent. It's not merely about developer convenience. Native GUI toolkits can appear artificially performant because they're required by the OS and thus almost always resident, vs cross platform toolkits that may be used by only one app at a time. When you open the lid though the gap between an engine like Blink and something like Qt, JavaFX or Cocoa isn't that big. They're mostly doing similar things in similar ways. The big cost on the web is the DOM+CSS but CSS has proven popular with devs, so native toolkits increasingly implement it or something like it.
- mattkevan 7y ago> Chrome itself is pretty tightly optimised for what it does. My laptop battery would disagree. I get about an hour and a half with Chrome/Electron, four or five without.
- thu2111 7y agoWhich laptop is that? Note: I didn't say the web itself is highly optimal. Just that for a web browser, Chrome is pretty thoroughly optimised.
- higerordermap 7y agoIt appears to me that chrome is perfectly optimized for speed at cost of memory and power.
- hajile 7y agoIt's not about "developer convenience". It's about "developers are expensive". I can build an application in electron 4-10x faster (at least) versus building the same application in C. If I'm costing a company $100-200 per hour, would they rather pay me for 4 months (500 hours and $50,000-100,000) or would they rather pay me for 1-2 years (2-4k hours) at a cost of $200,000 - $800,000? What about when we multiply that by a team of 5-10 people? Don't forget that time to market is often incredibly important. Tell them 2 years and 8 million or 4 months at 1 million and what will they say?
- StillBored 7y agoYou might build an application faster in electron... OTOH, C isn't a GUI development environment. If you want to compare a C based environment you compare it with GTK/QT/winforms/etc. In the end, as someone who has written GUIs in a wide range of tooling i'm not sure there really is that much difference. I've yet to see an electron application with 1/2 the functionality of similar native applications. Electron maybe gets you bootstrapped faster but then you bog down in basic data manipulation, and functional behavior because it turns out HTML/CSS/Javascript are absolutely terrible for building rich GUIs. Even now 20+ years after people first tried to do it. There are so many things people took for granted in the past (ex: grids with arbitrary sort, editing, and a scrollbar that represents where in the data you are) that are far more difficult in HTML than they are in more native solutions. Plus, the scalability is miserable, take your favorite framework and have it load 10k rows of data into a table. That was something you could do in VB/delphi in the mid 1990's on a 486 in a matter of seconds. This is why pagination is so popular. Half a meg of actual data bloats up into half a gig when you try rendering it in chrome/etc so your forced to leave it on the server and round trip for tiny bits.
- higerordermap 7y agoIt is because you want to hire inexpensive web developers to develop for desktop and get the check box ticked. Your average bootcamp webshit doesn't even know Big O notation. I don't expect them to be as productive as good developers either. The web ecosystem is a big mess where trends change every month and working in web ecosystem requires looking up things a lot because no one bothers to master the thing. It doesn't help that many web developers don't have solid foundations. This is a trap managers generally fall into. Cheap developers aren't equivalent to competent developers, and their incompetence will cost you more than what you save by hiring them instead of a competent developer.
- ajconway 7y agoImagine one day we get a computer able to perform operations unimaginably faster than what we have now. It would process Snapchat's dog filters in femtoseconds, firing up and tearing down millions of kubernetes clusters every frame (because it would be easier to write it that way). Would is still make sense to try and optimize software? Wouldn't it be more constructive to solve real-world tasks instead? Hardware is fast and cheap, and it's getting even faster and cheaper. It's perfectly fine to utilize this power, if it makes developing products faster, easier or cheaper. Now, there are still cases when you need to send a machine to roam the mountains of another planet. This may justify doing some assembly.
- saagarjha 7y ago> It would process Snapchat's dog filters in femtoseconds, firing up and tearing down millions of kubernetes clusters every frame (because it would be easier to write it that way). No, it wouldn't. Those tasks would just become less efficient with time as developers stopped caring to optimize them, as has happened with the overwhelming majority of consumer software for the past several decades.
- ajconway 7y agoThey would work well enough on the computers of that generation and painfully slow on today's supercomputers. Yes, just like the software we have today. I was trying to express that Electron (and the like) is not an inherently bad thing. It allows to trade hardware capacity for easier development experience. Those developers who use it create useful software that works. And software that works in a given environment is exactly the point of the industry, is it not?
- chillacy 7y agoSort of reminds me of Braess's paradox: you add a new road and then overall traffic slows. More bandwidth? Larger videos. More roads? More cars. Faster processors? More abstractions.
- paulmd 7y agoAlso Jevon's paradox, the more efficient you make a process or resource, the more consumption of it will grow.