4 ms·
From my experience, among academic computer science professors, the attitude is that computer science is about the "fundamentals" of computing. E.g., once I wa
by graycat 6y ago
From my experience, among academic computer science professors, the attitude is that computer science is about the "fundamentals" of computing.
E.g., once I was talking with such a computer science professor and listing features I wanted in a better programming language, and immediately his reaction was that for a professor developing such a language would be "academic suicide".
- throwaway17_17 6y agoThat matches my experience as well. It also illustrates the divide in educational tracks, for lack of a better term, that I probably should have expanded on in my original post. In addition to individual developers and development teams have the potential to be either the problem-solving or the theory building types, the path a person take to programming can go either of those directions. It is most apparent in the difference between a BS in CS from somewhere like Carnegie-Mellon (a bastion of high level theoretical CS education) and any code boot camp or online web-dev centric training course.
- rocqua 6y agoMy university had an amazing C++ programming course. Essentially all STEM majors could take credits from the course. CS did not allow credits from this course because "It is just programming" it teaches nothing fundamental. Meanwhile, this course was more difficult that most other courses, taught me to code much better, which helped most other courses, and taught me basic principles that I easily generalized and re-applied in other CS courses. I think that a lot of people going to do Academic work would have been better of for having taken this course. Even if they never were to touch a C++ like language again. The fact that, when talking about inheritance and sub-typing in C++, the terms "variance" or "co-variance" never came up, does not mean that this course taught me little on type-theory.
- bigbillheck 6y agoThere are several ways to interpret that person's reaction. 1. It would be academic suicide to develop a new programming language. 2. Developing a new programming language is fine, but developing one designed to be better for practitioners is academic suicide. 3. Developing a new programming language for whatever reason is fine, but the particular ideas you were suggesting were of such a nature (perhaps "generally acknowledged as bad" or "not an improvement over accepted practice") as to be academic suicide. (1) seems unlikely at best, there's a whole section on arxiv for programming languages (https://arxiv.org/list/cs.PL/recent https://arxiv.org/list/cs.PL/recent), and just within the last decade we have languages like Julia and Elm coming out of academia. (2) also seems unlikely, all the examples of recent academic-derived programming languages I can find are designed to make somebody's experience better. (And who would bother designing a programming language if they weren't at least hoping to improve something?) Without knowing further details, I won't comment any further on (3).
- graycat 5y agoYour points are well taken. But the more likely explanation for the professor's reaction was just that doing anything in programming language design would be "academic suicide". The date of his remark was about 1974, and I was suggesting improvements in PL/I that I'd been using for about 4 years. I believe his view was that academic research for programming languages in practice was over with -- e.g., LISP, APL, Algol 68, and PL/I were all implemented by 1974. So, your examples show that he was wrong: Long after 1974 others in academics did work in programming languages without academic death via suicide or otherwise. Sooo, in 1974, views of the academic research content of programming language design varied -- such variations are with us frequently, i.e., make horse races. But that encounter in 1974 was just one example. I had another one from a computer science professor in the 1990s. Also, with some irony, in the 1980s and 1990s, I was in the group at IBM's Watson lab that designed and implemented the artificial intelligence rule-based language YES/L1. We published lots of papers in academic conferences. Moreover, beyond just design, I was our lead on joint work with GM Research and was one of our two presenters of our paper at the AAAI (American Association for Artificial Intelligence) IAAI (Innovative Applications of Artificial Intelligence) at Stanford; so the work, design, implementation, and application of YES/L1 was regarded as worth of publication in academics. Indeed, MIT published a book with paper from the conference, and our paper was one of the ones published. So, with my work, I, too, showed that the comments of those two professors I mentioned were not correct. Still, it remains, with my two examples from professors, there long has been an attitude and belief that work in programming languages is not sufficiently "fundamental" to be in computer science and would be "academic suicide". That has been a common attitude; now both of us have shown that the attitude was not correct, but it remains that that attitude has long existed -- that was my claim, that there was such an attitude. I didn't claim that the attitude was universal or correct. Given that the attitude has been in academic computer
- graycat 5y agoI gave the prof's remark of "academic suicide" as an example of a significant attitude in computer science. I didn't claim that the remark was correct, and your examples show that the remark was not correct. But the more likely explanation for the professor's reaction was not your (1) -- (3) but just that prof's strong belief that doing anything in programming language design would be "academic suicide". Again, I didn't claim that the prof's attitude was correct, but it WAS his attitude. The date of his remark was about 1974, and I was suggesting improvements in PL/I (or similar languages) that I'd been using for about 4 years, for US Navy sonar work, scheduling the fleet at FedEx, etc. I would guess that the prof's view was that academic research for programming languages in practice was over with -- e.g., LISP, APL, Algol 68, and PL/I were all implemented by 1974. So, your examples and more show that the prof was wrong: Long after 1974 others in academic computer science did work in programming languages without academic death via suicide or otherwise. Sooo, in 1974, views of the academic research content of programming language design varied -- such differences of opinion are common, i.e., make horse races. But that encounter in 1974 was just one example. In the 1990s I had another one from a prof in a top level computer science department. Gee, at the time the President of that prof's university was one of my Ph.D. dissertation advisors, and I could have warned the prof that he was trying to paddle upstream against the relatively practical orientation of his university president! Also, with some irony, in the 1980s and 1990s, I was in the group at IBM's Watson lab that designed and implemented the artificial intelligence rule-based language YES/L1. We published several papers in computer science conferences. Moreover, beyond just language design, I was our lead on our joint work with GM Research, the person writing our paper, and one of our two presenters of our paper at the AAAI (American Association for Artificial Intelligence) IAAI (Innovative Applications of Artificial Intelligence) at Stanford; so the work, design, implementation, and application of YES/L1, was regarded as worthy of publication in academics. Indeed, MIT published a book with papers from the conference, and our paper was one of the ones published. So, with my work, now both of us have shown that the comments of those two professors I mentioned were not correct. Still, it remains, with my two examples from professors, there long has been an attitude and belief that work in programming languages is not sufficiently "fundamental" to be in computer science and would be "academic suicide". That has been a common attitude; now both of us have shown that the attitude was not correct, but it remains that that attitude has long existed -- that was my claim, that there was such an attitude. I didn't claim that the attitude was universal or correct. Given that the attitude has been in academic computer science, no doubt the work -- both research and teaching -- of academic computer science departments has been affected. In particular, students who are eager to get high proficiency in using programming languages, and, maybe, writing compilers, can find, sadly, that their department is not much interested. I have a third example of academic computer science demeaning programming languages: When I was prof in a Big 10 B-school and MBA program, I'd quickly upset the apple cart of the campus CIO (soon I served on a committee to pick another CIO) and been named the Chair of the Computer Committee of the B-school. And I'd given a grad course in computer selection and management. We were considering what our B-school might do in research and teaching in computing and had a site visit of computer science profs from some other Big 10 universities. At one of our meetings with the site visit committee, one of the visitors asked me what programming I'd done and in what languages. So, I mentioned some of my 15 years or so of work with a variety of applications with a variety of common languages. Right away his reaction was that from that experience with programming my "brain was ruined for computer science". Again, I'm not saying he was correct! So here is my third example of some academic computer science hostility to programming languages! This hostility seems to be a special case of a larger, common pattern in parts of academics: Some graduate students and non-tenured faculty live under continual yellow rain from leaks from higher up latrines. The situation is harmful for all productive purposes for all concerned. E.g., as a grad student, I got the best in our class on four of the five Ph.D. qualifying exams and in the fifth topic already, from independent work, had a first manuscript of my Ph.D. dissertation, but the yellow rain continued. It wasn't just me: Junior faculty were falling like soldiers at Gettysburg. By accident I found a solution, a water tight hazmat suit and a stainless steel umbrella: A course in optimization had gotten fairly deep into the Kuhn-Tucker conditions. I saw a question, saw no answers in the likely literature, and asked for a "reading course" to address the question. I had a rough idea how to proceed, and the course was approved. I looked around for existing tools for a solution, found none, so just pursued what I had in mind. Two weeks later I had a nice solution, written up, submitted, and accepted. So, I was done with the "reading course" in two weeks. Part of my solution was a surprising, curious theorem -- with the set of real numbers R, a positive integer n, R^n with the usual topology, and a set C a subset of R^n, set C is closed if and only if it is the level set of an infinitely differentiable function f: R^n --> R. My work in constraint qualifications also answered a question stated but not answered in the famous paper in mathematical economics by Arrow, Hurwicz, and Uzawa. Yes, I found it easy to publish the paper. When I submitted my work at the end of the two weeks, word spread quickly in the department. The prof I regarded as the best gave me congrats in the hall. Result -- the hazmat suit and umbrella. For the rest of my time through my Ph.D., no more yellow rain. My Ph.D. was in applied math and not computer science. It appears that it there is a wide range of topics in computer science and for most of the topics there are profs who regard the topic as good and profs who regard the topic as junk. The critical stuff of the yellow rain can cause stress, clinical depression, and suicide -- that's what happened to my wife, sweet old-fashioned girl, won prizes in cooking, sewing, raising chickens, Valedictorian, Summa Cum Laude, PBK, Woodrow Wilson and NSF Fellowships, and Ph.D. I do not now, nor have ever had, any interest in being a college prof or publishing papers. I regard such a career as financially irresponsible. My interests are in business, the money-making kind, and there I regard math, existing and/or original, and computing as the main tools. I went to grad school to learn more about the math tools. I was a college prof for a while as part of taking care of my suffering wife.