• 1 Post
  • 50 Comments
Joined 1 year ago
cake
Cake day: July 1st, 2023

help-circle
  • You don’t need to provide root access just because you used GPL code, you just have to follow the GPL.

    Well, to follow version 3 of the GPL, you do actually need to provide effective root access.

    Specifically, version 3 of the GPL adds language to prevent Tivoization.

    It’s not enough to just provide the user with the code. The user is entitled to the freedom to modify that code and to use their modifications.

    In other words, in addition to providing access to the source code, you must actually provide a mechanism to allow the user to change the code on the device.

    The name “Tivoization” comes from the practice of the company TiVo, which sold set-top boxes based on GPL code, but employed DRM to prevent the user from applying custom patches. V3 of the GPL remedies this bug.



















  • It was not Electron’s problem.

    The problem was the extension architecture, that they leaned into heavily. It encouraged basically every part of the system to interact with every other part of the system, like having free reign over the whole DOM. That’s what the creators meant by a “hackable” editor.

    VS Code is much faster, largely because of its much more sane extension architecture. Extensions are much better isolated, with a much smaller API surface by which they can interact with the editor. And the LSP design means core IDE-like features can be lifted into a privileged part of the system, and implemented once with performance in mind, while the actual analysis is done asynchronously in subprocesses.

    If you actually use both Atom and VS Code configured to feature parity, you would notice that VS Code is miles ahead of Atom. Microsoft did an amazing job proving that you can build complex performant software on Electron.

    Yes, Electron 2.0.0 was a great update, but it’s not the reason for performance. The reason was better software architecture.