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.
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.
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.
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"?
In many countries Software Engineering is a proper engineering degree, sharing many of the same lectures as other engineering degrees, including an engineering college and professional titles certification, not just something one calls themselves because it is cool.
Likewise in many of those countries, nursing is an university degree with many lectures shared with medicine degree, during the initial years.
> In many countries Software Engineering is a proper engineering degree, sharing many of the same lectures as other engineering degrees, including an engineering college and professional titles certification, not just something one calls themselves because it is cool.
I didn't know this! Thank you for correcting me.
> Likewise in many of those countries, nursing is an university degree with many lectures shared with medicine degree, during the initial years.
That's how it is where I live as well. My point was just that an undergraduate education doesn't really prepare a person to easily keep up with the research of specialists (although it might orient one enough to get through it with some effort and possibly some lingering questions).
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.