4 ms·
Fast Software, the Best Software (2019)
- mwkaufma 4mo agoShout-out: Voidtools Everything on windows. Lightning fast file search.
- gsu2 4mo ago[flagged]
- robjimgreen 4mo agoThis is definitely not slop. I’ve followed Craig Mod’s work for a long time and he’s a prolific, talented, and very human writer.
- ManuelKiessling 4mo agoThe article is from 2019.
- arcanemachiner 4mo agoThe slop is breaching temporal containment!
- aetherspawn 4mo agoMr. Robertson: That's the way it has to be. That's the way it's always been. You should understand that better than anyone. Temporal GPT: The snake that trains on its own tail, forever and ever?
- stcg 4mo agoWhat makes you think it is slop? The emdash?
- nubg 4mo ago> EDIT: I didn't say _AI_ slop Ahahaha holy cope
- sgarland 4mo agoI think the author has a certain writing style that you apparently dislike, which is fine, but it’s hardly slop. I agree that the comparison between Sketch being somewhat unreliable but fast undercuts the claim that speed and reliability often go hand-in-hand — though one could argue that the modifier “often” saves it. I’ve found that writers who self-profess to have ADHD often write in this way, with multiple, seemingly disparate points being made that can tie together if you squint. As an ADHD person who enjoys writing, it makes sense, and at least in my head, these points always connect; I’m just not great at demonstrating how they connect. I’ve no idea if the author is neurodivergent, but it’s one possible explanation.
- mtsolitary 4mo agoCan’t think of a less sloppy writer than Craig Mod…
- fmajid 4mo agoNo, no software is the best software. BTW, the title should say "(2019)".
- embedding-shape 4mo agoBest solution is no software, or as little code as possible. But that the best software is no software isn't very practical or actionable :)
- fmajid 4mo agoExample: I only buy basic Logitech B110s wired mice. No vendor software needed to activate mostly useless extra functionality, compatible with every single OS, including OpenBSD which doesn't support Bluetooth. In this case, no (driver) software is the best software.
- dan_i 4mo ago[dead]
- thunderbong 4mo agoNo code is faster than no code
- sfn42 4mo agoFaster at doing nothing?
- benj111 4mo agoYes. If you want to do foo. You don't need framework bar to load baz or call home to qux. That's all added complexity that isn't inherent to the task. So we aren't talking about not doing bar. We are talking about not doing all the other things that aren't for the benefit of the user.
- coldtea 4mo agoYes. Code doing what you need && nothing else is better than code doing what you need && 10 other things you don't need but have to take a perf/memory/clutter hit for.
- FrankRay78 4mo agoSlop or not, I enjoyed reading it. And could relate.
- HelloUsername 4mo agoPrevious discussion in 2019 https://news.ycombinator.com/item?id=20517144 https://news.ycombinator.com/item?id=20517144
- rossant 4mo agoI fully agree. I loathe slow software. I hate bloat. I love fast software. As a developer, I'm completely, even irrationally, obsessed with speed, performance optimization, and profiling. I wish more developers felt the same way.
- jonhohle 4mo agoThere are dozens of us! Dozens!
- sota_pop 4mo agoWe understand more than you’ll never know.
- coldblues 4mo agoIrrational how? What higher values does it undermine for you to make fast software?
- didgetmaster 4mo agoOP is probably referring to many engineering managers who think it is irrational to spend an hour in order to speed up a computing task that only shaves a few milliseconds off. Even when that software is widely used so the few milliseconds add up to thousands of hours in collective time savings. 'We don't pay for user's time, only your's', is the attitude. Again 'irrational'.
- Sesse__ 4mo agoThe sad part is that most employers don't care particularly about performance optimization skills (the economics don't work out, they can often just fix the problem cheaper with more hardware—and even if they can't, they mostly don't bear the cost themselves). The fun part is that when your employer _does_ care about software optimization, few people are actually good at it and your skills are more exclusive :-)
- jimbokun 4mo ago
- Ygg2 4mo agoHonestly, I'm in partially disagree camp. What matters is how much time it saves. A good WYSIWYG editor will run circles around the fastest text editor. Even if WYSIWYG is a bit slower to open. It would be preferable for software to be more focused and faster over time, but that doesn't attract people to it.
- jdw64 4mo agoFast and efficient software varies depending on the local context, but for me, I think I'd be fine with something slower as long as it's convenient enough. After all, once it passes a certain threshold, I can barely even notice the speed difference anyway. I wonder what OP's thinks of IDEs like VSCode. Would they see it as heavy and not great because it's Electron-based? But I find IDEs convenient.
- deleted 4mo ago[deleted]
- jimbokun 4mo agoDidn’t ask me but I’ve been enjoying Zed and finding it a big improvement over using VS Code.
- ungreased0675 4mo agoI run headless Alpine Linux (a minimal distro) in my homelab and it’s fast AF. The lag in Windows Explorer is sad when something like cd folder/folder is instant in Linux.
- prodigalknight 4mo agoTo be fair, cd folder/folder is also instant in a command line in Windows, it's just the GUI aspects that are slow. Comparing Windows Explorer to a terminal is comparing apples to oranges.
- bayindirh 4mo agoI don't think so. Windows is a GUI first OS, and Linux is a CLI first (or even CLI native) OS. You can't open a command line window in Windows without loading more than half of the desktop stack. In that sense, when a terminal (running on a desktop environment) in Linux is faster than Windows Explorer, it's a shame. When a big file explorer like Dolphin drives circles around native file explorer of Windows, that's a big ole embarrassment.
- pjmlp 4mo agoExplorer used to be fast, when it was a pure Win32/COM application. Then came the rewrite to adopt WinUI elements, and WinRT as well,.....
- bayindirh 4mo agoI know. I used to spend countless nights on older Windows versions, you know, when I was young(er). Now I know better and don't use that thing as a daily driver for... 20 years now? :D
- sgarland 4mo agoI don’t think I’ve ever noticed a difference in speed on the terminal between distros. Shells (or more accurately, plugins / frameworks - I recently gave up oh-my-zsh in favor of zimfw for that reason), yes, but not the terminal itself.
- pgisapedo 4mo agoNo way I wanna chat with my oven
- mike_hock 4mo agoGot any burning questions today?
- jagged-chisel 4mo agoMaybe a few half-baked thoughts.
- ivanjermakov 4mo ago> Google Maps has gotten so slow When it comes to navigating (except public transit), hiking, and route building, Organic Maps[1] is very good. OSM data and offline-first is the way forward for detailed and _fast_ map experience. For cycling route building I have to mention BRouter[2], which allows you to write a custom cost function that is used to tweak your route preferences. [1]: https://organicmaps.app/ https://organicmaps.app/ [2]: https://brouter.de/brouter/index.html https://brouter.de/brouter/index.html
- titanomachy 4mo agoCool! I'm guessing no traffic data in organic maps? I'd still install it to use as a backup.
- deleted 4mo ago[deleted]
- hansvm 4mo agoI remember an engineer I talked to recently saying that OSM didn't have sufficiently up-to-date data for their routing use case -- new roads, closed roads, traffic data, etc. Is that the case?
- rurban 4mo agoNo. It's their route function which sucks compared to Google maps. Their data is better and newer.
- dmurray 4mo agoIsn't OSM the data layer, and people are free to build apps on top of it? "The data is better than Google maps, it just needs a better routing algorithm" should be catnip to a certain class of OS dev. If it's really true, I'll take a crack at it myself!
- 4mo ago
- deleted 4mo ago[deleted]
- wseqyrku 4mo agoI think it's the different feeling you get from using an end-to-end streaming service (compute, not videos) versus the one that does a lot of intermittent buffering. It's quite subtle actually. Using a vanilla language model can feel like that if it's also sufficiently small but they are going towards the opposite direction very rapidly now because cloud.
- countWSS 4mo agoThe neglected part here is latency, speed itself can be masked by progress bars/animations, but having visible lag ruins the idea of speed and users treat it as slow vs animated loading bar.
- archargelod 4mo agoMaybe it's me who's weird, but I find animations as much worse - it's basically pointless and wastes slightly more time (even when program is fast enough!). The interface without animations feels snappier even if sometimes it takes a second to load. I disable any and all animations in software that I can - particularly in Android (via developer settings) and Linux (i3+vim vs something like KDE+VScode).
- qup 4mo agoAs a kid I liked the interfaces that lagged badly, but still accepted input perfectly. It felt like I was racing. Type the whole message before the screen updates? Check. I miss AOL sometimes.
- kazinator 4mo agoSome tiny amount of animation is needed to show that the system has responded. I regularly use a website in which a submit button does not change state in any way. It is indistinguishable from the click having gone to /dev/null. And the completion of the action takes a copule of seconds. It's literally, "no response ... few seconds ... oh, done!" If the button simply responded in the usual way, like 3d poppin in and out effect, it would be better. The UI can change state also to show some "wait ..." text. These are examples of animations, just not progressive/persistent.
- TeMPOraL 4mo ago> I regularly use a website in which a submit button does not change state in any way. It is indistinguishable from the click having gone to /dev/null. And the completion of the action takes a copule of seconds. In the good old days, you'd have the request sent by that button reveal a small, transient status bar showing the target URL at the bottom, plus the "Refresh" button in the browser toolbar would change to "Stop" instead; both effects lasted for the duration of the network roundtrip. It was enough of an indicator, and since it was not controlled by the website, it wouldn't break or lie to you.
- giovannibonetti 4mo agoShout-out to PowerSync for making it easier to develop fast offline-first mobile apps. It pushes data from Postgres/MySQL/SQL Server subscriptions to a SQLite into the user's mobile device, avoiding the need for many loading animations when the data is there ahead of time. My company is a customer and we recommend it.
- MomsAVoxell 4mo agoYes, there are so many examples of this .. a recent one for me, is iStatMenu .. it just got to the point that waiting for it to start, alone, was sufficiently boring enough that I sought an alternative .. and of course, I realized, there's no reason not to use the Linux tooling I'm accustomed to, and so I have btop where iStatMenu used to live, kinda. btop doesn't get in the way, doesn't phone home, doesn't check a registration key, isn't harvesting key clicks, and .. so on .. its just small, light, and fast. Well, with the encumbrance of it living in a terminal window, but I also live in the terminal window even on MacOS, so its a feature not a bug. Point is, I wouldn't have this to say about it if iStatMenu had just been a little more discrete about its loading times ..
- satvikpendem 4mo agoStats is the open source version I use
- williebeek 4mo agoI will read this entire article tomorrow while I wait for the Cursor UI and Visual Studio to finish loading.
- jimbokun 4mo agoI’m really enjoying Zed. Definitely much more responsive than VS Code.
- sylware 4mo agoRemove the specter and friends mitigations from your linux kernel, and your system will be significantly faster.
- nvms 4mo ago[flagged]
- kazinator 4mo agoIf the software is fast as a byproduct of being simple, that tends to align with correctness. If it is fast because it is optimized, then that does not align with correctness, because optimizing something that works only adds risk.
- snek_case 4mo agoSimple software is also easier to optimize. The simpler it is, the less weird corner cases you have to deal with.
- mikebs1 4mo agoIn production operations this plays out concretely. The systems that hold up under incident pressure are almost always the simple ones. Clever optimizations are the first things to behave unexpectedly at 2am.
- RetroTechie 4mo agoOne could say that (for whatever reasons) many software makers do a poor job of keeping non-essential stuff out of their software. And/or do a poor job of taking the shortest route from user input -> result. Never mind UI design. Similar thing is happening with web sites. Lately I've done "view page source" on eg. news sites I visit. Common pattern: 100s of KB html, loads & loads of meta tags, then a mountain of CSS junk, embedded scripts etc, and at the very end: maybe 3..5 paragraphs of text (a few dozen words each) with actual content. That's not counting images, video or external scripts, stylesheets, fonts etc. Oh and images not from the actual subject discussed, but 'random' sample illustration from an image library. Ok sure, you want to add some meta-tags to html documents. You want a page to look good, and run a couple of scripts. But do you need a MB+ of that to provide a few KB of text to your visitors? NO YOU DON'T. >95% of that is non-essential crap that shouldn't be there in the 1st place. There's little doubt in my mind that (most) software development works the same way. Bad incentives -> crappy software.
- aetherspawn 4mo agoJust because something doesn’t perceive to be lightweight doesn’t mean that it isn’t. Many modern web frameworks are extremely lightweight (ie Svelte), but it’s complicated how they achieve it, and the source code looks like sludge.
- rurban 4mo agoAlso called: "Death by PM" Esp. known from Microsoft, Adobe, Google. Should be added to the Antipatterns repo
- roncesvalles 4mo agoOn this note, (from a web dev perspective) I think we've overdone making the static build as lean as possible and pushing everything into the backend. E.g., if a 2MB dataset will make a search/select bar return results instantly instead of having to roundtrip an API, just send up the whole dataset with your initial load. After gzip it's nowhere close to 2MB anyway. Also, I think suspense is an anti-pattern now. We've all been conditioned to groan every time we see suspense animations because it means the website must be slow. It's better to just have a little circling loader or just freeze.
- esafak 4mo agoWhat do y'all do and use for performance testing in CI, given that host speed can fluctuate?
- iLemming 4mo agoFree and open-source software is certifiably best. Even when the proprietary alternatives have better features and are faster. I've been using computers for decades, and have used dozens of paid products, but not a single paid option stuck with me forever, while tons of open-source tools are literally irreplaceable - and not because I'm just used to them, but specifically because they give me control to customize them just the way I need.
- arikrahman 4mo agoRapidRAW offers a good lightroom alternative nowadays.
- purple-leafy 4mo agoSlow software sucks and simple is good. I’m making browser games and my core idea is that they must be fast as hell and light as hell. Such that they can run on a potato! Unfortunately this means cutting non essential animations lol. And testing on throttled devices (low end mobile) and respecting thermal throttling A recent win for me for performance was: - 8192 simultaneous entities on screen path finding, checking reward functions, making strategy decisions with zero frame drops - sub millisecond average frame Time (more like sub 0.5ms) with 256 entities on screen (logic and rendering) - “compressing” game replays from 100KB naive to 1KB
- deterministic 4mo agoA typical problem with software is that development continues after the software has already reached its peak. Instead of making it better, new features and changes gradually make it worse. Eventually, enough users leave that it is no longer worth paying a team to keep working on it. And then the cycle starts again.
- bryanrasmussen 4mo agohttps://medium.com/luminasticity/on-premature-optimization-in-entertainment-development-d2f66083cb26 https://medium.com/luminasticity/on-premature-optimization-i... wanders a bit around the premature optimization history, but later has >Nowadays almost all development is for things that are not necessary. Pretty much all modern development is for things that are entertainment....The difference between things that are necessary and entertainment is that you will wait however long it takes to do the necessary thing in the reductive view of the article everything that is not necessary is termed entertainment. But I have noticed this. I often drop useful things because it just isn't worth it to wait. So the argument really is, in today's world, speed is almost always the most important factor anything accessed through the computer can have.
- winrid 4mo agoPretty proud that after six years fastcomments is still only about 30kb I should probably work again on getting that down some :)
- zombot 4mo agoThe best software is correct and safe software. Rating "fast" more important than that is what started all this "worse is better" mess in the first place. Just not enshittifying and not using Electron should be fast enough if you don't write dumb code.
- Self-Perfection 4mo agoI am mulling the idea that we need a day of fast software software to spread the [culture?] of loving fast low-latency software. Like a programmers day or sysadmin day. That is a special celebration of fast software. To celebrate one should find faster alternative to some of his usual tools, try to switch and spread the word. Or maybe avoid opening Jira for a day at $job.