4 ms·
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 st
by cosmic_quanta 1y ago
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.
- triknomeister 1y agoIf physics paper were not dense, they would be 400 pages long. It's still hard to read but in a different way.
- user_7832 1y agoIt'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.
- wk_end 1y agoPhysics 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.
- pxc 1y agoComputer 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"?
- pjmlp 1y agoIn 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.
- pxc 1y ago> 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).
- moffkalast 1y agoOr you know, computer science papers. They're all science and no computer.
- webdevver 1y agoMost of what we call "computer science" today is nothing more than digital carpentry.
- rockostrich 1y 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."
- mhh__ 1y agoperhaps although this is a fairly cutesy paper and there are cutesy physics papers too
- IshKebab 1y agoThat'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.
- mrkeen 1y agoIt's because it's an SPJ paper https://simon.peytonjones.org/great-research-paper/ https://simon.peytonjones.org/great-research-paper/