3 ms·
I didn't see any analysis of network building as an alternative to M3s. For my project, ~40 million lines, past a certain minimum threshold, it doesn't matter h
by nox101 3y ago
I didn't see any analysis of network building as an alternative to M3s. For my project, ~40 million lines, past a certain minimum threshold, it doesn't matter how fast my machine is, it can't compete with the network build our infra-team makes.
So sure, an M3 might make my build 30% faster than my M1 build, but the network build is 15x faster. Is it possible instead of giving the developers M3s they should have invested in some kind of network build?
- dzek69 3y agoMaybe, but I feel that s not the point here
- rag-hav 3y agoWhat do you mean by network build?
- kwk1 3y agoThey probably mean tools like distcc or sccache: https://github.com/distcc/distcc https://github.com/distcc/distcc https://github.com/mozilla/sccache https://github.com/mozilla/sccache
- baq 3y agoAnd incredibuild: https://www.incredibuild.com/ https://www.incredibuild.com/
- DeathArrow 3y agoDedicated build machines.
- novok 3y agoThat is a very large company if you have a singular 40 million line codebase, maybe around 1000 engineers or greater? Network builds also takes significant investment in adopting stuff like bazel and a dedicated devex team to pull off most of the time. Setting up build metrics to determine a build decision and the other benefits that come from it is a one month project at most for one engineer. It's like telling an indie hacker to adopt a complicated kubernetes setup for his app.
- Cacti 3y ago1,000 is a small company.
- ironick09 3y agoThey said 1000 engineers. Surely a company consists of roles other than software engineers, right?
- novok 3y agoA company with ~1000 software engineers is probably in the top 100 in software company sizes in the world, especially if they are not a sweat shop consultancy, bank or defense contractor, which are all usually large companies themselves.
- Cacti 3y agoI mean, the vast majority of software engineers in the world are not in software engineering companies. If we are purposefully limiting ourselves to Bay Tech companies, then sure, I guess 1,000 software engineers is big. But the companies in the world that are around the top 100 employers in the world, like you suggested, these places have 150,000 to 250,000 employees. 1,000 programmers for internal CRUD and system integration is quite realistic; the IT staff alone for a company that size is like 5,000 people, that is not even accounting for their actual business (which these days almost always has a major software component). This is also not including large government employers like the military, intelligence, or all of the large services like the mail. 1,000 software engineers is simply not that much.
- Kwpolska 3y agoNetwork full builds might be faster, but would incremental builds be? Would developers still be able to use their favourite IDE and OS? Would developers be able to work without waiting in a queue? Would developers be able to work offline? If you have a massive, monolithic, single-executable-producing codebase that can't be built on a developer machine, then you need network builds. But if you aren't Google, building on laptops gives developers better experience, even if it's slower.
- idontknowifican 3y agoi hate to say it but working offline is not really a thing at work anymore. it is no one thing, but a result of k8s by and large. i think a lot of places got compliant when you could just deploy a docker image, fuck how long that takes and how slow it is on mac
- Kwpolska 3y agoThat depends entirely on the tech stack, and how much you care about enabling offline development. You can definitely run something like minikube on your laptop.