[HN Gopher] Google Docs in a clean-room browser ___________________________________________________________________ Google Docs in a clean-room browser Author : sohkamyung Score : 350 points Date : 2021-09-20 12:28 UTC (10 hours ago) (HTM) web link (www.ekioh.com) (TXT) w3m dump (www.ekioh.com) | evmar wrote: | > seems to compare the Firefox version number with 65 ... I've no | idea what the purpose of this is | | I previously worked on JS infra at Google. Google uses a lot of | shared JS libraries that date back over a decade, and those | libraries have accumulated lots of workarounds for browsers that | nobody cares about anymore. (One especially crazy seeming one | from today's perspective is that there's a separate | implementation of event propagation, I believe because because it | dates back to browsers that only implemented one half of event | bubbling/capture!) | | It's very difficult to remove an old workaround because | | 1. it's hard to be completely sure nobody actually depends on the | workaround (especially given the wide variety of apps and | environments Google supports -- Firefox aside, Google JS runs on | a lot of abandonware TVs), and | | 2. it's hard to prioritize doing such work, because it's low | value (a few less bytes of JS) and nonzero risk (see point 1) | without meaningfully moving any metrics you care about. | | In all, how to eliminate accumulated cruft like is a fascinating | problem to me in that I can't see how it ever gets done. And it's | not a Google thing. Even the newer cooler startup I now work at | has similar "work around old Safari bug, not sure if it's safe to | remove" codepaths that I can imagine will stick around forever, | for similar reasons. | brundolf wrote: | 1) Write it from the beginning in such a way that it can be | removed easily. Ideally a single chunk of code, an entire file, | etc. | | 2) Put a big comment on it that says "HACK: Remove when X is no | longer the case" | | 3) Periodically check X when you think about it or come across | that code | | If X is "users' browsers have collectively reached a certain | milestone", that should be easy to measure for via logs | brabel wrote: | > Put a big comment on it that says "HACK: Remove when X is | no longer the case" | | You know, every now and then I come across some comment like | that from 6 years ago that is clearly no longer applicable | and I go and remove the hack... feels really good, but I | don't think anyone will just go around looking for these | trying to get rid of hacks as there's ALWAYS more important | things to do... the hack will probably remain mostly harmless | there for decades to come :D so why would we spend time on | that other than by happenstance, like I've just mentioned?! | brundolf wrote: | I mean it's really satisfying to do, and if the originator | did make the thing easy to remove, then it doesn't take | away much time from other priorities | munchbunny wrote: | > In all, how to eliminate accumulated cruft like is a | fascinating problem to me in that I can't see how it ever gets | done. And it's not a Google thing. Even the newer cooler | startup I now work at has similar "work around old Safari bug, | not sure if it's safe to remove" codepaths that I can imagine | will stick around forever, for similar reasons. | | I think this is because it's not purely a technology problem. | Especially if you have enterprise customers, the real question | you are asking is: by removing support for these specific | browsers, are you breaking someone's important workflow in a | way that lacks viable IT workarounds? Because if you are, the | backpressure via business channels will be what forces you to | keep the old cruft in the code. | | In a previous job, I had to explicitly keep tabs on certain | customers' IT policies w.r.t. browsers because that would | ultimately inform our browser support matrix, and because it's | enterprise, the actual browser versions could lag by 5 years or | more. And when a single enterprise user is stuck on IE9 but the | account is worth tens of thousands of dollars to your nascent | startup, starting a fight with their IT department is one of | the last things you want to risk customer goodwill on. | | That's why I was goddamn ecstatic about Microsoft's move to | Edge, because it meant historically stuck-on-Trident businesses | now had a path to supporting more up-to-date browser tech on a | much faster cadence. | sroussey wrote: | Exactly--it's a business issue. There are likely SLAs for | support Roku or Samsung devices as well as the enterprise | fleet you mentioned. | joe-collins wrote: | For letters "p" and "z", this strikes me as likely related to | print and undo functions. | jrochkind1 wrote: | all the letters between p and z. pqrstuvxwyz | inetknght wrote: | > _not sure if it 's safe to remove_ | | That's a symptom of companies spending all their money on | building new features without also spending money on regression | testing. | | If you build a feature to work around a third party then surely | you have that third party on-hand to build automated tests | against and ensure that something didn't break and/or is still | needed? If not then you're not writing new features; you're | writing hacks. And you are perpetuating the same problem on | other people. | jokethrowaway wrote: | While I agree in theory, for a long time there was no easy | way to test frontend code across multiple browser. That | effort was simply too high for anyone. | | Nowadays front-end testing is doable but still far from being | a pleasant experience. I did it at some jobs, in others we | just didn't think the benefits were worth the hassle. | | Now that I'm building a small business my backend is very | well tested while the front-end doesn't have tests. This is | partly because of the setup cost and partly because the | development experience is so bad that I see our small company | just throwing everything out of the window, keeping the html | structure and rebuilding the thin UI with some better | technology along the way (current stack is react + next + | tailwind, we've been doing react for 5+ years) | wpietri wrote: | Interesting! Could you say a bit about what you think might | come next? Or from a different angle, the pain points you | have that make you think a rewrite in a new stack is | preferable? | jokethrowaway wrote: | I don't think we're waiting for some new concept that is | missing. I've been hoping for someone to maintain some | popular js library implementing real functional reactive | programming and arrows (like | https://hackage.haskell.org/package/auto), but I can live | without it. | | I'm just waiting for something polished, with a small, | simple, codebase (not React with fibers, yes to something | like solidjs, preact) with widespread types support (not | Typescript and the quest for implementing types for every | dependency), ideally not creating huge bundles (I like | solidjs / svelte), with a core solution to manage state | (I like Elm), ideally supporting CSS encapsulation and | semantic css (I like CSS modules, MaintainableCSS), | mainstream enough that I can hire people to work with | without having to become a teacher. | | I think Elm got 90% there, but it failed hard on the | community side. I'm thinking of moving to a Rust | framework (eg. seed-rs) next as soon as they get popular | enough and after checking whether the wasm bundle size | make sense. | jefftk wrote: | The most likely case is that Firefox <65 still doesn't work | (browsers almost always only fix bugs in new versions), and | the question is whether or not it's still worth supporting | the portion of traffic on pre-2019 Firefox. | xxpor wrote: | Not always true. Especially for something running on client | devices. You can't expect an app maker to own every possible | device their code is going to run on. | | Now maybe Google could do something like that, but 99% of | people couldn't. | | There's also, in this case, a question of _if_ anyone is | still using the device /browser/whatever. It sounds like they | know removing the workaround will in fact break that use | case, they just don't know if they should care or not. | | The third party in this case might be Grandpa Joe. You can't | exactly ask him to use the beta version of X and see if it's | broken. Or if he's still on Firefox vOld.ancent. | z3t4 wrote: | It used to be that when someone got a fancy new device, | like an iPhone you just said: - If you want me to fix the | issues, send me an device. | | Now alot can be emulated. I can for example start Xcode | simulator and pick the device someone have issues with. Or | I can run Windows Xp in VirtualBox. Or emulate the Samsung | smart-watch, or run Android emulator. So a lot of devices | can be simulated or emulated, and you can try removing a | line of code and re-run the test suit on all the virtual | devices. | | Lots of old code for obsolete devices is only one end of | the problem! The other end is to make sure all those old | devices still works when you make changes and add new | features! There's no idea keeping and old fix if the app | will crash on that device anyway. | haliskerbas wrote: | Plus how many people even get promoted for painstakingly | removing JavaScript that wasn't needed in the first place? | evmar wrote: | As a person who enjoys doing this kind of cleanups, it is | disappointing. But when I think of the larger business | perspective, these kinds of cleanups are difficult to | justify, in that the value of them is hard to quantify. | | Overall the net effect is a kind of death by a million cuts, | but each of these cuts individually is a decent amount of | work to clean up and fix that doesn't itself move any | needles. | | My latest perspective on this is that the only renewing force | is the also the one found in nature, which is that you | occasionally need to burn the whole forest down or have the | organism die, so that you can start again afresh. In a | business setting this means using a new stack in a new app. | yarone wrote: | Like the Lotus 1-2-3 date workaround for Excel: | https://www.joelonsoftware.com/2006/06/16/my-first-billg-rev... | d4mi3n wrote: | > One especially crazy seeming one from today's perspective is | that there's a separate implementation of event propagation, I | believe because because it dates back to browsers that only | implemented one half of event bubbling/capture! | | My oh my, that takes me back to the days of quirks mode and | early versions of Internet Explorer. I made a good living | through college helping design and ad agencies backport stuff | to IE5/6/7 and became intimately familiar with the lack of | event bubbling support and fan favorites like: | | 1. IE displaying a blank page with no errors whenever a CSS | file of more than 4kb was loaded | | 2. Resolving CSS rendering issues between IE5/6/7 due to | differing rendering strategies for the CSS box model | | 3. Debugging javascript in IE back when dev tools didn't exist. | | For all people harp on the current state of the web, we have | come a long, long way. | dmitriid wrote: | > and nonzero risk (see point 1) without meaningfully moving | any metrics you care about. In all, how to eliminate | accumulated cruft | | Ironically, the other side which is Chrome can be quite blase | about this. See the recent alert/confirm/prompt kerfuffle | https://dev.to/richharris/stay-alert-d | masklinn wrote: | > One especially crazy seeming one from today's perspective is | that there's a separate implementation of event propagation, I | believe because because it dates back to browsers that only | implemented one half of event bubbling/capture! | | MSIE only supported bubbling, Netscape 4 only supported | capturing. The DOM Level 2 model (which combined both) started | getting supported around IE5 / NS6 / Mozilla, though support | would remain spotty for a while especially on the IE side. | | Microsoft's event model also worked off of a global | (`window.event`) for the event information rather than a | callback parameter which was fun. | | And there was no "current target" passed to the callback (or | available on `window.event`), which meant you had to keep a | handle on the event target from your callback, which caused a | cycle between the DOM and Javascript, which created a memory | leak by default: IE's DOM was a COM API, while JScript was its | own separate non-com runtime. By creating a cycle between the | two, the JS handle would keep a COM refcount > 1 on the page's | DOM, and the event target would (through the event handler) | keep a foreign JScript handle, and then neither could be | collected. | | And because IE's COM instance was per-process the leak would | live until you closed IE itself, every reload of the page would | create a new document in COM, an event handler in JScript, and | leak the entire thing. You had to explicitly break the cycle by | hand by detaching your events during e.g. onunload. | | In fact there was a tool called "drip" whose sole purpose was | to open a page in an HTML control, then loop reloading the page | and counting COM objects. If the number increased, you had a | leak (almost certainly due to an undetached handler), and | now... you had to find where it was. | | edit: and the state of tooling at the time was... dismal is too | kind a word. This was before Firebug and console APIs, so your | tools were either popping `alert` for debugging (this was also | before JSON support in browser so serializing objects for | printing was neat) or installing a debugger, which were | universally shit and only handled *javascript debugging: | | Mozilla had Venkman, which was dog-slow and had a weirdly busy | UI. | | Microsoft had either the Script Debugger or Visual Studio's | debugger. SD was extremely brittle and would crash if you | looked at it funny while VS was heavyweight and expensive. SD | was also completely unable to debug scripts at the toplevel (of | JS files or <script> tags), it only worked inside functions. I | don't think VS supported that either but I don't remember as | clearly so it might have. The best part of that was that you | could set breakpoints at the toplevel, they just wouldn't ever | trigger. | Joeri wrote: | I totally forgot all the time I used to invest back in the | day in working around those IE quirks. At one point I drew | stats and figured out we spent a quarter of our frontend | development budget on IE compatibility. Thanks for the | memories. | pmarreck wrote: | Just a quarter? | sroussey wrote: | I got a shudder when you mentioned drip. Oy! | IggleSniggle wrote: | The longer I work in software, the more I see parallels to DNA. | Yeah, sure this parasitic chunk of blueprint seems like it | doesn't do anything, but it's not harming survival of the | species, and hey, maybe it will serve some important purpose to | the propagation of the larger supporting organism somewhere in | the long long tail of probability. | | I've also adopted this truism, to help me away from pre-mature | refactorings that I am prone to do: Clean code will either be | discarded, or it will live long enough to get accidentally | mutated into a mess that nobody wants to touch. | quantum_mcts wrote: | https://xkcd.com/1605/ | japanuspus wrote: | My biologists friends on twitter were all up in the air about | a "Vault Organelle"[0] the other day. Knocking out this | organelle doesn't seem to do anything, but everyone seems to | agree it must have some corner case function to still be | around. | | The vault is not a new discovery, but since it doesn't exist | in yeast or fruit flies it has somehow not gotten a lot of | attention... | | [0]: https://en.wikipedia.org/wiki/Vault_(organelle) | rapnie wrote: | It works the same with bureaucracy in governments too. Stuff | is too complex, so rather extend than refactor. | wpietri wrote: | Hah! I had the same thought. I proposed that after Y2K we | shift all the old COBOL programmers to decoding the human | genome, as 30-year-old code bases are the closest thing we | have. | | In a few years I should make the same proposal but for all | the Enterprise Java developers. | wenc wrote: | Python 3 was an attempt to remove cruft but it was drawn out | and somewhat painful. | | Apple on the other hand has managed to reinvent itself | successfully several times by controlling its vertical | tightly, and each time it does it there's a natural shedding | of cruft. I remember every single architectural move -- 68k | to PPC to Intel and now to ARM, executed impeccably each | time. Moving a developer ecosystem with the times is truly | one of the harder things but Apple seems to have managed to | pull it off each time. | dtech wrote: | That is not really the same. I wouldn't be surprised if Mac | OS is still full of PowerPC specific code that just isn't | easily identifiable as such. | tambourine_man wrote: | It's not. NeXT was already multiplatform in the 90s. | dmurray wrote: | This isn't really a "state of the web these days" complaint, | it's what happens any time you ship cross-platform code. Look | at any reasonably mature C/C++ codebase and you'll see plenty | of '#ifdef _linux...#ifdef _OpenBSD...'. | | Having complete control over the environment your code runs in | is the exception, not the rule, though the modern trend for | SaaS might make you think that backend code looks cleaner than | the frontend. | vxNsr wrote: | I'm curious as this is a closed source project, who does it | exist? what market are they trying to serve? | jitl wrote: | Anyone who wants to run a high performance browser on minimal | hardware. Eg browser on TV set top box, embedded point of sale | device, etc. | ybot2 wrote: | I used to develop Set Top Box user interfaces that used the | Ekioh browser. We'd use SVG, JavaScript and CSS to get native | UI performance in a browser that was running in 256MB ram. | Their later versions enabled us to use HTML5 and CSS3. I | enjoyed the challenges of balancing UI animation against | capturing keypresses and other events as well as executing | JavaScript fetched via AJAX. Due to the memory constraints we | couldn't use any JavaScript frameworks and wrote everything in | vanilla JS. | | Our C and C++ developers would expose the native hardware | functionality up into the JavaScript Ekioh engine so that we | could access and control features like scanning cable TV | frequencies and recording to disk. | | The cable and satellite TV networks would end up paying a | licence per instance of the browser running on each of their | customers set top boxes. | devwastaken wrote: | *Closed source browser. | | Flow is yet another project pulling on open source resources, and | the browser market created from open browsers, and trying to | privatize it. Imagine if google could just make whatever internal | changes to chromium and nobody knew about it. | [deleted] | kiryin wrote: | Imagine the irony of fate if they not only did that, but also | had the audacity to call the resultant browser "Chrome." Makes | me shudder. | cxr wrote: | One side effect, intentional or not, that came from Google | naming their browser "Chrome" was that Gecko development | become more difficult. It became too hard to get search | engines (you know the one) to understand that you weren't | looking for Google blog posts and press releases, but instead | developer documentation for Mozilla internals, which you | could have pretty reliably found previously by including | "chrome" as a useful search term. | breakfastduck wrote: | > "yet another project pulling on open source resources" | | Erm, yeah. Isn't that the point of making something open source | with a permissive license? So that other people are able to use | it in their own projects? | ronsor wrote: | I feel like a lot of people choose permissive licenses due to | inertia while not really understanding them. | wpietri wrote: | Legally for sure. But from an ecosystem perspective, it's | reasonable to be concerned about people whose relationships | to a commons is essentially extractive. When I use open | source in commercial offerings, I see it as both morally | appropriate and good business to contribute back in one way | or another. | maccolgan wrote: | Why not use GPL/AGPL/LGPL as it's clearly more appropriate | in this case? | wpietri wrote: | From my perspective as an open-source consumer, that | doesn't matter much. The license tells me what I can | legally get away with. But what I care about | pragmatically is whether that project will keep existing | and improving such that it will meet my needs down the | road. And what I care about morally is maintaining | positive-sum relationships with my community and society. | [deleted] | formerly_proven wrote: | > Imagine if google could just make whatever internal changes | to chromium and nobody knew about it. | | Chromium is BSD licensed so Google absolutely can just make it | closed source. | chubot wrote: | Just to clarify the relevant thing is whether Google owns the | copyright to Chromium source, and it does for a huge part. It | can license that code however it wants, including open | source, or no license at all. | | Chrome/Chromium also uses a ton of open source libraries for | which Google does NOT hold the copyright, but all of them, | per their license, can be linked with closed source code and | distributed (i.e. they are not GPL/copyleft). | est31 wrote: | The BSD license only applies to some code from what I can | tell. Other code is still under LGPL. At least this is what | this file tells me: | | https://chromium.googlesource.com/chromium/src/+/refs/heads/. | .. | empyrical wrote: | Yes, there's code in Chromium going back to the KDE/ | Konqueror and WebKit days that's LGPL licensed. Mostly in | the Blink rendering engine like you linked. | [deleted] | JumpCrisscross wrote: | > _yet another project pulling on open source resources_ | | And? It's a product people find useful enough to pay for. | | Open source is by default provided to the world freely. If | someone is opposed to it being use freely, in any way the | person on the other side chooses, including commercially, there | are licenses that can proscribe that. | SahAssar wrote: | > Imagine if google could just make whatever internal changes | to chromium and nobody knew about it. | | If you use chrome, they do. Chrome has a lot of changes and | additions that are not in the open-source chromium codebase. | timw4mail wrote: | I would be a lot more impressed with this browser engine if I | could actually see it working. | timw4mail wrote: | Apparently there's a preview for Raspbian: | https://support.ekioh.com/download/ | youngtaff wrote: | It's been available for a while... | | I download and try it every couple of months to see what | their progress is like | sysadm1n wrote: | Yes but what's a 'clean-room browser'? The article doesn't | explain what that term means. | kilovoltaire wrote: | https://en.wikipedia.org/wiki/Clean_room_design | blagie wrote: | Technically, color me impressed. | | Business-wise, I'm skeptical: | | - Alternative browser engines have always fallen behind, | eventually. | | - Open-source is a huge win for most embedded applications. | | - Having a big company backing something is a huge win too, since | something like Webkit ain't going away. | | I think one possible outcome here might be an acquisition. | Microsoft was forced to eat crow with Edge adopting Google's | engine. This would be an opportunity for Apple, Microsoft, or | Amazon to leapfrog Google. A GPU or multicore-accelerated browser | could make the iPhone/Macbook/etc. much more responsive than | Chrome. | | Another might be some open-source strategy, but I don't quite | know what it might be. | Y_Y wrote: | Maybe someone benevolent could buy it. Probably not Mozilla, | but what about a big FOSS outfit like GNU or Apache or | Raspberry Pi. I think I'd even be willing to break my embargo | on crowdfunding to promote such a crucial bit of the web. | | Firefox is great, but I don't want to put all my chickens in | that basket. WebKit is alright but has many drawbacks | documented elsewhere. Any other engines are too broken on the | "modern web" that society demands we use. A healthier ecosystem | will less dependence on Google would be good for just about | everyone. | pas wrote: | None of those (GNU, Apache, rPi) ever bought anything, they | get projects donated to them, but even then they lack any | real resources to invest into such huge projects. | dmitriid wrote: | And for a while Apache was where projects went to die. | | Thankfully, there are more active and growing projects now. | rahimnathwani wrote: | There are bunch of use cases listed here: | https://www.ekioh.com/solutions/ | javajosh wrote: | Acquisition seems natural, because this would be a great | component in a Pi-focused set-top box experience, competing | with RokuOS. | ajb wrote: | They aren't huge, but there is a market for these embedded | browsers. Ekioh has been around for 15 years. | gsnedders wrote: | And they haven't undergone huge growth to make Flow possible, | so I don't think there's any reason to believe they'll be | less viable now than they have historically been. | ReactiveJelly wrote: | Doesn't WebKit already have a lot of GPU and multi-thread / | multi-process acceleration? | | Even Gecko does now. | sroussey wrote: | Blink and V8 also use GPU and multiple threads. | derefr wrote: | "Adopting Google's engine" is an interesting turn of phrase. | There's still more Apple-contributed code at the core of Blink | than Google code. It's not like Google did a full rewrite when | they forked Webkit to create Blink. | | When you think about it, at this point the Chromium project | (including the Blink engine) has "contributions" in some sense | or another from Microsoft, Google, Apple, and KDE. Certainly, | it's a project mostly _run and stewarded_ by Google employees | in their off-hours; but there are actually a lot of interests | involved! (Especially now; I expect Microsoft has likely | switched their Edge browser engineering team to to writing PRs | for Chromium.) | tonyedgecombe wrote: | >in their off-hours | | Is that really the case, I always imagined they had a full | time team on it. | crakenzak wrote: | That's not true, there's plenty of people working full time | on Blink. | | Source: I work at Google on the Chrome team. | gsnedders wrote: | They've the largest browser team, by a decent margin. | zaphar wrote: | They do. Google employs a lot of engineers on fully open | source work including but not limited to Chromium. | derefr wrote: | To be clear, what I meant is that projects with open | _stewardship_ (which I believe the Chromium Project is? | unclear from the project website) don 't tend to want | _employees of companies, in their capacity as employees-of- | companies_ to be directors /core maintainers for the | project. Which is different from being regular developers | on those projects. | | Open-stewardship projects tend to be happy to accept | _contributions_ from companies; and they tend to be happy | to accept the stewardship of _individuals who happen to | work at companies_ ; but they don't want to be _beholden_ | to the interests of those companies in their direction, so | projects with community /foundation stewardship don't | usually allow companies to pay their employees for their | time spent sitting on that foundation's board. (I.e. they | let companies pay employees to _write code_ , but they | won't allow companies to pay employees to do the work of | _deciding whether that code belongs upstream_.) | | Instead, the software foundations that manage FOSS projects | usually legally restrict corporations or their | representatives from participating in their capacity _as_ | representatives of corporations in directorship /steering | committees/etc. for the foundation. Instead, they | expect/require each person with decision-making authority | in the foundation to have their own individual voice--to | not be just a sock-puppet of a company, saying whatever the | company wants you to say. When you vote for things in the | foundation, you have to be able to vote _for_ the interests | of the project itself, even if those interests are | _against_ the interests of the company you work for-- | without that endangering your job. | | Which usually means that employees of such companies must | do their foundation maintainership "off the books" of the | company they work for, e.g. at non-work hours using non- | work equipment. Just as if they were trying to avoid IP | cross-pollution. | | Source: worked at a company with an "open core" product, | where the core was an Apache Software Foundation project, | and most of the ASF project's maintainers _happened_ to be | employees of the company. Those people could push a PR to | the ASF upstream for consideration from their work account, | as a representative of the company; but they then had to | don their personal-gmail-account, separate-profile, no- | corporate-affiliation hat to handle the PR and discuss it | with the other maintainers. | mda wrote: | I don't think your claim is entirely accurate. Google's blink | and Webkit are probably very different after all these years. | And even at the very beginning of Chrome, Google had to make | quite a bit of changes because of Chrome's process / | sandboxing model , which was the main reason for the fork | later (also related adaptations for skia graphics engine and | v8) See [1]. | | Besides html rendering is only a portion of what makes a | browser. considering today's Chromium codebase as a whole, I | would guess probably >80% of it was written by Google | engineers (and certainly not in their off hours). Still I | would consider it a successful open source project as now it | has quite diverse contributors, (Non Google contributors now | amount to ~30% [2], biggest are Microsoft, Igalia, Intel | etc.). | | [1] Slides from 2013 https://events.static.linuxfound.org/sit | es/events/files/slid... | | [2] BlinkOn 14 keynote: https://youtu.be/VrEP7SPfQVM?t=408 | derefr wrote: | > and certainly not in their off hours | | To clarify: I implied that Chromium is _run and stewarded_ | in Google employees ' off-hours, which is different from | the project being _developed_ in Google employees ' off- | hours. | | Of course Google pays people to work on Chromium. But do | they pay people to decide what makes it into Chromium? | | If so, that's a very bad look for a FOSS project. One of | the central points of having a separate standalone | community-driven FOSS project in the first place (rather | than a corporate "source-available and we accept PRs if you | assign us the IP" project), is taking steering of the | project away from the corporation that created the code, | and placing it instead in the hands of the community. If | Google employees serve _in their capacity as Google | employees_ as directors for the Chromium Project -- and so | Google can tell its employee-maintainers to reject a PR | from Chromium because it 's not good for Chrome -- then how | could a browser vendor producing a competitor to Chrome | based on Chromium, trust the direction of Chromium to do | what's best for _all_ Chromium-based projects, rather than | just Chrome? | | I assume this _is not_ the case; that Google employees not | only don 't direct the Chromium Project with backroom | Google-internal decision-making, but _are restricted | legally_ from so doing. Though I can 't find anything on | the Chromium Project site to support that assumption... | jenny91 wrote: | I don't think Chromium is that kind of open source | project. It doesn't seem that having the FOSS community | leading the direction of dev is something they do. If you | read some of the docs it seems that Googlers have special | privileges and it's quite intertwined. | nightpool wrote: | I'm not sure I understand why you think Chromium is | supposed to be community driven. Chromium is an open- | source project that has a lot of Google and non-Google | contributors (for example, Microsoft), but all of the | main decision-makers are working on Chromium on behalf of | their companies, and the majority of decision-makers are | employed by Google. | Jyaif wrote: | > There's still more Apple-contributed code at the core of | Blink than Google code. | | Not sure about that. Even before the Blink fork, Google was | the main contributor to WebKit. See the first two graphs at | https://hypercritical.co/2013/04/12/code-hard-or-go-home | throwaway744678 wrote: | Also, a large part of the browser is the javascript engine, | which I believe they do not share. | ronsor wrote: | V8, the JavaScript engine used in Chrome, is fully open | source. Many projects (including node.js) use it. | pas wrote: | Maybe the parent comment meant that Chrome and Safari | don't share the same JS engine. (As Safari uses | JavaScriptCore aka. Nitro.) | eitland wrote: | The code will probably be available. | | As far as I can see the bigger problem isn't the code but a | viable ecosystem, somewhere customers can go if Google | doesn't behave. Let me explain: | | As long as Firefox is alive and kicking Google cannot kill ad | blockers on Chrome as they realize that will create an | enormous backlash, massive PR and users flocking to Firefox. | | Once Firefox is gone the network effects will be strong | enough that they can eventually kill adblocking and people | will be stuck with Chrome anyway. | | Blame it on regulations or big media or whatever but I am | certain they will do it if they get a chance. | | Chromium source code might still be available but will not | work on Gmail or Google Docs or Netflix, only on enthusiast | websites :-/ | Joeri wrote: | You really think google would walk away from all those | safari users, especially on mobile, by forcing chrome? This | seems ... unlikely. | eitland wrote: | Sorry, I forgot, at the moment Safari might - more or | less voluntarily - be a more important defender of the | free web than Mozilla. | | It just so happens that Mozilla and Firefox is still on | top of my mind because of how good they were back before | they changed management. | bbarnett wrote: | I wonder. | | For phones/tablets, Apple doesn't want anyone using the | web for apps, insisting on app store (and fees) for all | transactions. | | If Google came along with a deal to switch to Chrome, | would modern, post-Jobs Apple go along? | | Unless something had changed, they already accept cash to | funnel Safari users to Google by default. And Google apps | somewhat compete with Apple products. | | So... why not more cash, and make Chrome Safari's guts? | nyanpasu64 wrote: | Ad blockers are already dead on Android Chrome. I wish more | people would use ad-blocking browsers, perhaps Firefox, but | Fenix is somewhat slower than Chrome, and is a software | train wreck of bugs. | trulyme wrote: | What bugs? Ff had an upgrade not long ago where they made | it difficult to use extensions, and the UI has been made | worse (or I'm just old and set in my ways), but bugs? It | just works. If it is slow, I never noticed. | nyanpasu64 wrote: | I'm using Firefox Nightly, but many of the issues are | present on release too: | | - Saving images doesn't send the cookies, so you can't | save images gated behind a login. (over 1 year old, not | fixed, #17716) | | - Switching tabs (by swiping the address bar) sometimes | shows the old tab's contents/interaction, with the new | tab's address bar. (unsure if reported, I should report | it.) | | - The menu shows a "sign in to sync" or similar prompt. | When I click it, the settings screen shows me as logged | in. When I close the settings screen, the menu shows me | as logged in. (#19657, possibly #19036 too) | | - Reopening a tab moves it to the very top of the list, | before your _oldest_ open tab. (fixed in nightly, #10986) | | - Opening the tab menu scrolls you to a random place, | rather than the currently open tab. (got fixed a few days | ago. #20637, possibly #20960 too.) | | - Reader mode randomly switches to default theme (fixed a | few months ago, #17865) | | The tracker is at https://github.com/mozilla- | mobile/fenix/issues. | | The impression I get is that Firefox Mobile is shipping | broken code and unwanted redesigns, and testing in | production. Perhaps it's from a lack of engineering | culture and management. Looking at issues like | https://github.com/mozilla-mobile/fenix/pull/21038, I | feel Mozilla is more interested in marketing, design, and | analytics, than solid engineering. It's nauseating and | depressing to see Mozilla fall so far. | mdoms wrote: | Ok I'll ask seeing as it's never defined in the article: what is | Flow and why should I care? | banana_giraffe wrote: | As I understand the sales pitch for Flow, it's a browser that | can run on low power devices and remain responsive and useful. | | Never used it myself, it was one of the possibilities we looked | into recently for a set-top-box thing that would render most UI | with a browser. | kiryin wrote: | Words can not express the relief it is to see a completely new | web browser rendering engine being developed. It's heartbreaking | that it's proprietary, my initial wish was that they'd open up | after it matured a bit. Still hopeful though, the browser | landscape needs diversity and preferably in the form of something | that isn't carrying 3 decades worth of baggage. | freediver wrote: | It is quite reasonable for it to be proprietary as developed by | a small team that still needs to see return on its investment. | Last thing they need is someone with a pile of cash and/or | reach taking their engine and launching a new browser with it, | stealing their thunder. | | Monetizing a browser is not easy if you are not in the data- | monetization game. | nerdponx wrote: | > Monetizing a browser is not easy if you are not in the | data-monetization game. | | How do we know that they aren't? | | It's like free money for a tech company. There's little or no | disincentive, and they don't have to do a lot of extra work - | the data is already sitting around waiting to be collected. | z3t4 wrote: | How can I test this browser to make sure my web sites works on it | !? | sharmin123 wrote: | Let's Secure WiFi Network and Prevent WiFi Hacking: | https://www.hackerslist.co/lets-secure-wifi-network-and-prev... | gadders wrote: | Very offtopic, but the name of the author - Piers Wombwell - | would make a great name for an Ob/Gyn. | EamonnMR wrote: | I'm refreshed that Flow does not have its implementation language | on the front page. | [deleted] | Y_Y wrote: | As much as I'm irked by language partisanism, that's typically | justified on the basis of ease of installation or attracting | developers. Since this otherwise great looking product is a | closed source binary then it would be hard to justify. | | (Although I bet it's not in Rust, because then they'd surely | say it anyway.) | gsnedders wrote: | (It's C++) | marcodiego wrote: | Web does not want another closed browser. ___________________________________________________________________ (page generated 2021-09-20 23:00 UTC)