5 ms·
Source Depot was still a thing in Office as of last year when they finally transitioned to Git. Windows started transitioning to Git 5 years ago. Also, they ha
by gigel82 3y ago
Source Depot was still a thing in Office as of last year when they finally transitioned to Git. Windows started transitioning to Git 5 years ago.
Also, they have about 10k people working on Windows (and devices) and about 10k people working on ads nowadays (that paints a good story of priorities).
Source: 2nd hand from MS friends
- com2kid 3y agoSource Depot's largest disadvantage VS git how hard it is to share changes with others. But I miss the ability to only pull down a portion of a monorepo, and the ability to remap where folders are at, or to pull down a single folder into multiple locations. So much bullshit in with monorepos in Git land exists because Git doesn't support things that Source Depot (and Perforce I presume) supported decades ago. As an aside for those who don't know what I am talking about, when pulling down a repo in source depot you can specify which directories to pull down locally, and you can also remap directories to a different path. This is super useful for header files, or any other sort of shared dependency. Instead of making the build system get all funky and fancy, the source control system handled putting files into expected locations. So imagine a large monorepo for a company and you can have some shared CSS styles that exist and they always end up in every projects `styles` folder or what have you. Or the repo keeps all shared styles in a single place, and you can then import them into your project, but instead of build system bullshit you just go to your mappings and tell it to pull the proper files put them into a sub-directory of your project. It is a really damn nice to have feature. (That also got misused a ton...)
- forrestthewoods 3y agoEhhh can’t say I’m a fan of folder remapping. It gets a little too auto-magical and since all tools access the file system directly different users can see different things. That’s just begging for bugs and “works on my machine”. I’m moderately confident the correct path is monorepo + centralization + virtual filesystem. Not every tool plays nice with VFS but at this point most do. The D in DVCS is almost entirely a waste. Source control systems should, imho, trivially support petabytes of history and terabyte scale clones.
- alexvoda 3y agoThe Distributed part is definitely not a waste. Some people have different workflows from yours and depend on it heavily.
- forrestthewoods 3y agoTell me more. When is the D relevant? When is it super critical? Working offline is distinct from distributed. In practice almost all development is defacto centralized on GitHub (or other central host). > In software development, distributed version control (also known as distributed revision control) is a form of version control in which the complete codebase, including its full history, is mirrored on every developer's computer. That’s a super mega anti-feature to me. Git still sucks for large binary files which is an insane limitation.
- alexvoda 3y agoYes, most development is de-facto centralized on GitHub/GitLab/SourceHut/BitBucket/etc. The Linux kernel is not, and Git was designed by the creator of the Linux kernel to serve the needs of the Linux kernel developer community. And I am certain they are not the only ones with that workflow.
- forrestthewoods 3y agoWe agree. Git makes fundamental design choices that are (maybe possibly but not necessarily) good for the Linux kernel. They’re objectively bad and problematic for the majority of dev work. Which makes it really fucking shitty that the industry standardized on a tool that is bad for standard workflows.
- com2kid 3y agoI haven't seen a virtual filesystem overlaid on top of a monorepo before, do you have any examples of what that looks like? Semi-related, I try to use symlink shenanigans in git to share common files between monorepo projects w/o using 3rd party tooling, but my latest attempt worked on Windows but the symlink fell apart when the repo was pulled down on a Mac! Not the OS that I thought would have issues. :)
- maccard 3y agoPerforce's support for that is not great these days. They don't support it in streams, and honestly if you're not using streams in p4 these days you're doing it wrong.
- inglor 3y ago> But I miss the ability to only pull down a portion of a monorepo, and the ability to remap where folders are at, or to pull down a single folder into multiple locations. We have all that with git in Microsoft though. We don't check out the entire office monorepo - only the parts relevant to what you're working on (Excel in my case). Also sharing stuff in SourceDepot wasn't the bad part (you get links to changelists and those open in a desktop program). The bad part was the branching model, commits, no real/good CI (we had a commit queue) etc). SourceDepot was just overall a bad scm for us.
- inglor 3y agoAm still in Microsoft, was part of that transition and can confirm it. We did move stuff we could to other git repos inside Microsoft. SourceDepot is still running for some stuff and is still awful but git is working great. > Also, they have about 10k people working on Windows (and devices) and about 10k people working on ads nowadays (that paints a good story of priorities). I'm not sure I'm privvy to all information but looking at the org chart this part is false. The ads org is much much smaller than E+D.
- exikyut 3y agoIf you have a moment, a tangential question. A little while ago I read a very interesting comment responding to some general "why is this and that broken [in Windows]", that said > Windows is only $5m a year https://news.ycombinator.com/item?id=34934946 https://news.ycombinator.com/item?id=34934946 I was very impressed to determine that was only $416k/mo. Since I read that I've been like "that can't be right." (There's certainly no qualification of scope to work with.) That's roughly 15-20 (~$250k-$333k) senior developer salaries. I'm very curious how and where Windows practically fits into the pie chart nowadays, mostly just from the perspective of a passively curious person who likes to file away watermarks and yardsticks :) There's probably some perfectly externally-facing info out there under a rock I'm not sure where to look for...
- inglor 3y agoI'm just a software engineer working for Microsoft and I'm on HN since I worked on 3 startups (one YC funded) and do a ton of open source (in my free time, Microsoft funds none of it). I enjoy working for Microsoft (mostly) but I have _no idea_ how our sales looks like.
- exikyut 3y agoAppreciate the reply.
- oaiey 3y agoI would take that with a serious grain of salt. The kernel is also in the Xbox, the headset, the azure deployments in some form, the server os, etc. There are easy three other divisions neck deep in the funding of the kernel.
- emptyfile 3y ago[dead]