Microsoft has clearly taken notice. They're already starting to lock down the upstream VSCode codebase, as seen with recent changes to the C/C++ extension [0]. It's not hard to imagine that future features like TypeScript 7.0 might be limited or even withheld from forks entirely. At the same time, Microsoft will likely replicate Windsurf and Cursor's features within a year. And deliver them with far greater stability and polish.
Both Windsurf and Cursor are riddled with bugs that don't exist upstream, _especially_ in their AI assistant features beyond the VSCode core. Context management which is supposed to be the core featured added is itself incredibly poorly implemented [1].
Ultimately, the future isn't about a smarter editor, it's about a smarter teammate. Tools like GitHub Copilot or future agents will handle entire engineering tickets: generating PRs with tests, taking feedback, and iterating like a real collaborator.
[0] https://www.theregister.com/2025/04/24/microsoft_vs_code_sub...
[1] https://www.reddit.com/r/cursor/comments/1kbt790/rules_in_49...
I actually find it a little reassuring that they can't seem to get out of their own way.
I don't like that GitLab lets you nest organizations and such, it makes it so painful to find things over time. I appreciate GitHub doesn't do this, I view it as a plus
I also disagree about GitLab CI, not that it wasn't smart for them to include alot sooner than GitHub, but Actions is really good and really easy to get up and moving with. I find they run faster, have better features - like they can annotate a PR with lint errors and test failures - with very little comparative configuration.
GitLab CI yaml is a mess by comparison. GitHub was smart to push things to the runner level once a certain complexity threshold is hit.
This has been my experience of course, and so much of it is really subjective admittedly, but I don't think GitLab is truly ahead at this point.
Nah, I hate that. At my job we have a few different orgs, with terrible SSO boundaries (having to auth multiple times to GitHub because I work on repositories from different GitHub orgs). Allowing you to have a proper structure with nestedness, while still having good search, is great. You can also easily move projects and namespaces around, so if the structure doesn't work, it can evolve.
Why would you have the 50 library repositories you've had to fork as top level projects polluting your org? You also can't really do shared variable, environment, CI configs between repos of the same project/type.