This paper is excellent for many reasons, but I want to emphasize how approachable it is. Anyone working as a developer can read this and get insights.
This stands in s t a r k contrast to other disciplines (e. g. Physics) where papers are usually ultra dense, making it hard to read even for subject-matter experts.
By cosmic_quanta 12 hours ago
That's because it's a review paper. There are plenty of computer science papers that are impenetrable, or leave out all the important details.
Build systems don't involve anything really complex. Go and read some papers on unbounded model checking if you want unapproachable.
By IshKebab 6 hours ago
Most of what we call "computer science" today is nothing more than digital carpentry.
By webdevver 8 hours ago
> is nothing more than digital carpentry
Or you could just call it what everyone has been calling it for the past 20 years and say "software engineering."
By rockostrich 7 hours ago
If physics paper were not dense, they would be 400 pages long. It's still hard to read but in a different way.
By triknomeister 12 hours ago
It's also the language. This paper is written in a way I can easily skim through it and google whatever specific term I don't know. And I'm not even a software or IT professional and don't know what MAKE is.
By user_7832 11 hours ago
Physics is a hard science. Software development is applied engineering. I’m sure there are applied engineering fields adjacent to physics where papers are fairly readable by practitioners.
Most developers would struggle quite a bit to read typical theoretical computer science papers.
By wk_end 11 hours ago
Computer science is a formal science with empirical elements, as much as I'd like to think of it as a branch of mathematics. I'm not sure what to make of "software engineering" or "software development", academically, but it doesn't really seem to be applied engineering; software engineering students don't study general engineering and then apply it to software, and finally layer some software-specific focus on top. And most developers are still nominally trained in "computer science" rather than "software engineering" or "software development" anyway!
Rather than engineering, the academic discipline of software engineering grows out of computer science, which was born as an area of interest in mathematics. It shows! Because most developers who prepare for their jobs by their choice of major in school typically study computer science, let's consider a typical curriculum: a tiny bit about how hardware works, a small amount of "low-level" software stuff in a class where students work in assembly language, some management science-ish stuff (typically part of the software engineering classes, focused on the development lifecycle, development methodologies, etc.), and a little bit about "design patterns", which is engineering-y but often more qualitative than quantitative in nature. You can often get cross-listed credit for some electrical and computer engineering electives, but they're very much optional. (And many schools don't even have a software engineering program per se, only a computer science program.)
To the extent that software engineering even is a theoretical discipline that can be "applied" on the job, it doesn't share much, ancestrally or methodologically, with engineering. The most they really have in common is that they are broadly speaking puzzle-solving disciplines that often rely heavily on fairly sophisticated formal reasoning.
> Most developers would struggle quite a bit to read typical theoretical computer science papers.
This is probably true, though, perhaps especially because even those who study computer science as undergraduates don't aim to be computer scientists. Their emphasis is reflected in their electives, and they don't continue to study computer science once they join the workforce.
Is this unusual? Can most nurses not only competently but effortlessly read and understand the research output of working medical scientists? Can a one-time biology major typically read and understand contemporary research on micro-organisms without "struggling quite a bit"?
By pxc 9 hours ago
perhaps although this is a fairly cutesy paper and there are cutesy physics papers too
By mhh__ 7 hours ago
Or you know, computer science papers. They're all science and no computer.
Neil Mitchell is also an author of Shake which is based on this paper.
Buck and Buck2 from Meta are descendants. Buck2 is an excellent piece of software. Too bad it is still niche.
By mkleczek 8 hours ago
Not sure if niche is right word to describe buck2; as I understand it's perfectly good general purpose build system. What it really is missing is just users, so that the ecosystem for it could get bootstrapped.
It's kinda awkward situation with Bazel, buck2 is arguably simply better system but Bazel has an ecosystem. That makes both of them less attractive solutions atm.
Naturally, the ecosystem is a chicken and egg situation; it will not improve unless some brave souls will do some trailblazing. Meta can not be expected to solve this when they have their own custom internal ecosystem which is not really applicable for others.
By zokier 4 hours ago
I wrote a paper about how I think trust should work for software dependencies.
It very much builds on the hash-based cache lookup mechanism this paper calls constructive traces (in contrast to what they call deep constructive traces) to eliminate transitive trust relationships.
Why would MS use Wordpress for their blog? (judging by wp-content in the URL). Don't they have something internal?
By der_gopher 6 hours ago
This paper is so important. Just imagine how much pain could have been avoided if the Gitlab and Github developers read this before making the steaming shit pile of Github Actions.
By cosmic_quanta 12 hours ago
By IshKebab 6 hours ago
By webdevver 8 hours ago
By rockostrich 7 hours ago
By triknomeister 12 hours ago
By user_7832 11 hours ago
By wk_end 11 hours ago
By pxc 9 hours ago
By mhh__ 7 hours ago
By moffkalast 9 hours ago
By esafak 10 hours ago
By mkleczek 8 hours ago
By zokier 4 hours ago
By mschwaig 11 hours ago
By der_gopher 6 hours ago
By tsss 5 hours ago