this post was submitted on 14 Feb 2024
675 points (95.5% liked)
Technology
59436 readers
3829 users here now
This is a most excellent place for technology news and articles.
Our Rules
- Follow the lemmy.world rules.
- Only tech related content.
- Be excellent to each another!
- Mod approved content bots can post up to 10 articles per day.
- Threads asking for personal tech support may be deleted.
- Politics threads may be removed.
- No memes allowed as posts, OK to post as comments.
- Only approved bots from the list below, to ask if your bot can be added please contact us.
- Check for duplicates before posting, duplicates may be removed
Approved Bots
founded 1 year ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
Says who?
How is "being bulkier" relevant at all? But let's just go down that route and say that a fork does not necessarily end up in a bulkier product. A dev team could decide to fork, then remove unwanted features from the original project; which is what's happening with Librewolf as far as I know (e.g. no Pocket bs.)
Finally, let's remember that both Safari and Chrome have their roots on Konqueror's KHTML rendering engine. By your metric, we should be saying that they don't count either; because they're "(definitely) bulkier forks" of KHTML.
says me, the one who made the original comment.
now you just have a patched together, disjointed, mess of a browser, on top of a second dev team, who now needs to unpatch it together, re patch it together, and then somehow repackage that. It's just hopeless. It's like trying to turn a full size pickup into a small lightweight town car. It's just not going to happen.
It's worth noting that when a fork is building on top of something, there is a point where the original roots are no longer present, or no longer significantly present. It's like saying that android is linux. Which doesnt stop the charts from displaying android separately to linux, or chromeos for that matter. Even if it did i don't like the browsers because they're too bulky so it's not like it influences my opinion anyway lol.
Then it's a weak argument without real support.
You are assuming way too much. As if Apple and Google did all this with KHTML. Which lead us to:
And what's your point by saying this? What does it matter if the roots "disappear," if the product is good enough for competition?
What bulky browsers don't you like?
I mean yeah, but it's my opinion on the matter. Even then my original claim is based on the fact of something being an active fork of another browser. Which is still going to line up with my point just fine.
assuming too much if you think modern applications are programmed/designed well. Ultimately no matter what you do, having a product be around for a decade, let alone multiple of them, is going to incur substantial tech debt, and significant feature creep. There is nothing you can do about this. It happens in EVERY industry. In fact the only thing that helps to prevent this is an almost religious and fervent dedicated to pure minimalism when it comes to what your software is doing. Look at something like DWM for example.
My point is that beyond a certain point, a fork is no longer a fork, but more like a competing piece of software. You see this all the time, look at android or chromeos. Technically "based" on linux, but so far gone that almost nobody considers it linux, i only ever see it mentioned in jokes. Something like prism which is a fork of poly, which is a fork of multimc is starting to get to the point where it's more of an alternate piece of software, than a direct fork. It's twice independently maintained, it's feature set is focused differently.
If you need more examples why dont we have a look at a COW filesystem? When you make a change to a file, a fork is created, and that change is then saved on that forked path, so now you have multiple different versions, throughout the chronological history of that fork. If you have auto-deletion enabled for old forks, as you should, at some point you will have "orphaned" forks. Which no longer represent in anyway the original file, but exist as an independently separate instance of that file, in a different state. It's a similar idea, in a different scale, on a different system. There is also a point where it no longer exists as a fork, but as an implementation on top of that original piece of software. How that's defined is a little more complicated though.
It's a little bit philosophical, and semantical, but my point is simple, if your piece of software exists as a fork on top of another piece of software, you don't get to call yourself "faster" or "leaner" or "more optimized" than the original. Your base browser is still a piece of shit, you've taken a bad car, and repainted it, now it looks a little bit better. But it's still a shit car. You turn a beater into a race car by completely stripping it to bits, at a certain point, it's not really a fork anymore. In the same way that putting a body on a different frame isn't the same as the original.
it's not like i've literally named them or anything.
I still don't understand what this has anything to do with "forking makes a product bulkier," the original claim. At most, what you're saying is that the fork will have its own set of tech debt. But that doesn't make it bulkier by default. Again, a fork of Firefox without the Pocket and "experiments" crap will be lighter.
Well, yeah, isn't that the point of forking? I still don't see why a forked browser being "yet another competing browser" is a bad thing. It's the opposite!
I completely disagree with you, and I think I know why you think the way you think. It seems like you assume that all forks:
Man, have you never seen TV shows about mechanics taking shitty cars and making them awesome? Yes, they strip it to pieces, and reassemble said pieces. That's part of engineering practices. It appears that you have a narrow way of seeing how software development works. Devs don't need to take in the whole "shitty project" and be resigned to deal with it. They can take the good parts, and rewrite the bad parts. And that's just one example.
You haven't mentioned any browser that's a fork from Firefox and that is also bulkier than Firefox. Librewolf? Bulkier than Firefox? Really?
I mean yeah, removing two features removes two features, that still doesn't optimize the entirety of the browser, all of the rest of the browser will behave the exact same with no difference (unless, somehow, those features are actually so badly implemented they actively impede performance) Thats like taking a corolla and removing the entirety of the interior to strip weight, and doing literally nothing else to it. It's just marginally faster now. Handles a little better maybe. Everything else is still stock though.
I dont inherently have an issue with forks, i have an issue with stuff like thorium, you forked chrome, that's great, chrome is faster than firefox by most accounts. You made it maybe 40% faster in some instances? Cool. It's still basically chrome though. They describe it as The fastest browser which, if that's true, that's great! It's still basically chrome though. The issue here is that the modern web, and the web browsers designed around it are just massively overbuilt and bloated. We're solving problems that shouldn't exist, and we're adding features that do almost nothing other than cause problems half the time. That's not a good starting point. Unless you completely rip everything out, and rebuild it. Which is inherently not what a fork is.
Yes, you wanna know what they do most of the time? Completely strip it down, and then rebuild it. If you have done that with either chromium or firefox, you wouldn't be calling it a fork of chrome/firefox, and everybody would ALL over it. As far as im concerned, any fork of either of those browsers is just removing the most egregious garbage, which is a good thing, but it's still just a bad browser underneath the removed garbage.
Let's compare forks, firefox and librewolf, both browsers i have installed, and both browsers i use. As far as i can tell they're effectively the same thing. Librewolf probably has some cruft removed and some good defaults compared to firefox, but other than that, nothing inherently different.
Lets look at chrome and chromium why dont we, this is actually just the reverse, but wouldn't you be surprised to discover that i dislike chromium equally as much as chrome because they have equal design decisions? It's almost like 90% of the feature base is going to be identical between them or something!
Thorium? I've not used that one yet, i assume it's just chrome, equally annoying to use, but with the slight added benefit of having marginally less time to ponder my bad life choices in between bouts of loading heavily ad bloated sites, and JS infested messes of web design. Plus all the ram that it probably still consumes. Because it's a web browser, why wouldn't it.
I don't even where to start, but let's just say that I now see where you're coming from. You seem to have an issue with this Thorium browser, then project your perspective over other projects that are also forks. Just because one implementation sucks doesn't mean they all do.
And we have different ideas of software engineering. To you, features are just the things that the user can interact with. When you say things like "that's like someone stripping the interior of a Corolla and doing nothing else." Except that I was thinking, precisely, of working on the whole car, including tweaking the engine, the electrical system, the fuel pump, etc. Sounds like a lot of work? Maybe. But it's better than building a car from scratch.
Anyway. Have a nice day!
that would be more of a rebuild than a fork. If your end product is more similar to the OEM car than it is to the end product. It's more like a fork. If the car is more akin to a custom built racer, than the OEM, it's a rebuild.
Again, we have different definitions what a fork is. Let's just say that to me, a fork is worth it, and to you, it isn't. It's all good.