Skip to main content

A Draft MathLANifesto

Within the next few months, the College will be hiring a full-time Linux system administrator to support the Linux systems on campus, including MathLAN, the Library’s various Web services, the high-performance computing cluster [1], and other such systems. My colleague, John Stone, has suggested that we put together a statement of educational principles that ground our use of Linux to better inform not only the search process, but also the candidates for the position.

John prepared an excellent draft, and we spent some time today discussing it. Alumni and other members of the Grinnell Plans community have discussed these issues on Plans. We will further discuss these issues with current students during this week’s Thursday Extra [2]. I expect that we will have an even more excellent and detailed statement after we go through those discussions, as well as follow-up discussions with some colleagues in Mathematics and Statistics [3].

While it is likely best to provide our information in more traditional memo format, I am inclined to undertake the exercise of attempting to write about our goals in a kind of Manifesto format. This essay serves as my first draft of that project. We’ll see how it goes, and whether it is worth pursuing further.

It should go without saying that the principles in this draft MathLANifesto are guided by conversations with a wide range of people, including past, present, and future faculty in the CS department and elsewhere at Grinnell; current and former students; faculty at other institutions; and assorted denizens of the Interweb.

This draft reflects my particular perspective. You should feel certainly free to write your own.

A MathLANifesto

As Grinnell computer science faculty, we have responsibilities to our students (both majors and nonmajors), our institution, our scholarly communities, and the broader world. We strive to help our students grow as careful thinkers, problem solvers, and, when appropriate, as builders of software. Because we have expert knowledge, we help guide our institution in issues pertaining to computing. As scholars, we support and advance the field through our research and writing. And, as computing professionals, we do our best to ensure that the work we do has a positive impact [4].

Free and open source software, particularly the Linux operating system, supports those responsibilities. Unlike proprietary software, Free and open source software is available for inspection, inspection which can help our students learn, and which can allow everyone to consider the security and efficacy of the software they use [5]. Free and open source software provides students with an environment they can use with limited financial investment and, unlike student priced proprietary software, remains available to them when they leave Grinnell [6].

Students learn in multiple ways. While our classes provide one avenue, many learn as much from open exploration with the ability to experiment. We make our systems as open as possible to support such exploration. In particular, students may comfortably use a variety of computing resources for learning.

We are not typical computer users, and our needs often cannot be met by common software packages. Like many offices on campus, we expect to be able to use best of breed software and practices. Among other things, we rely on the ability to script the software and environments that we use.

We and our students write software. We must be able to easily install and run the software we create or modify.

Much of our teaching involves open-ended projects. It is not possible to predict in advance what software or libraries are necessary for such projects, so our policies and procedures make it simple, efficient, and quick to have additional software installed.

Like our teaching, our scholarly work relies on a wide variety of software and libraries. We need administration rights for our workstations so that we can install such software as soon as we need it.

As computing educators, we frequently make our educational materials available broadly, not just to our students and colleagues at Grinnell, but to anyone who might find them useful. Since those materials are typically hosted on the World-Wide Web, we need to be able to push materials to our Web servers.

Computing does not and should not require physical access to the machine. We and our students need to be able to access MathLAN computing resources wherever we are, provided we have a connection to the Internet.

To help our students understand their responsibilities as computing professionals, we look for class projects that have societal impact [7], we provide opportunities for students to reflect upon the impact of computing, and we encourage students to read and follow the principles of our professional societies.

Hmmm … a bit demanding. Perhaps a bit defensive. Inconsistent in level: There are some high-level principles and some low-level expectations.

It needs work. Among other things, a concluding paragraph might help. But I did say that it’s a draft. Stay tuned for a future one.

[1] I had written high-performance-computing cluster, but Grammarly tells me that I should have written high-performance computing cluster. I’m not sure that I agree. From my perspective, high-performance modifies computing. But I guess I can see the other perspective, too.

[2] By we, I mean Mr. Stone, and whatever other faculty show up. I’m unavailable this week.

[3] I don’t think Bill and Ted are available, but I am confident if they were, they would also deem the eventual statement as excellent.

[4] This introductory paragraph is probably a bit long. But I don’t want to cut it into multiple paragraphs. I’ll have to think more about that.

[5] I realize that very few people read source code. But since it’s available, we know that some people will read it and will likely find risky or strange aspects.

[6] Another long paragraph. This manifesto is starting to feel like more of an essay than a manifesto.

[7] I think we need to do more of that.

[8] My muse hangs out with some strange people.

Special bonus section: Grammarly report

Since an alum suggested Grammarly, I’ve been trying to run a few essays through it. Here are some of the issues that caused me to reflect for more than a moment.

  • not only the search process, but also the candidates for the position. Grammarly suggests that I drop the comma. I think it reads better with the comma. Surprisingly, the Grammarly ’blog entry on this issue notes that the comma is acceptable.
  • There has also been discussion on Grinnell Plans. Grammarly suggests that I add an article to discussion. I’m not sure how I feel about that suggestion. But the Joe Williams voice in my brain [8] is telling me that I shouldn’t be using nominalizations in the first place. So you won’t find that sentence any more.
  • followup discussions with some colleagues in Mathematics and Statistics. Grammarly suggests that I use follow-up. The Grammarist says that both are acceptable, that follow-up is more common, but that followup is gaining in usage. I was going to leave it as followup, but I’ve now looked at it enough that I think Grammarly is right.
  • Free and open source software is available for inspection, inspection which can help our students learn. Grammarly says that I should use an inspection or the inspection. I find that breaks the rhythm of the sentence. The Joe Williams voice says that I should use for students to inspect, so that there is a clear actor. I’m going to ignore both pieces of advice.
  • we look for class projects that have societal impact. Grammarly tells me to add an article, as in a societal impact. It seems that I drop articles a lot when I use an adjective. I’d write have an impact rather than have impact, so why don’t I want to write have a societal impact? I need to talk to someone about that.
  • I realize that very few people read source code. Grammarly tells me to write the source code. It’s wrong.

That was fun, but probably not a good use of my time. If I paid for their premium version, I could learn about six advanced issues. It doesn’t seem worth it.

Version 1.0.1 released 2017-02-22.

Version 1.0.2 of 2018-04-03.