Week 8

COVID-19 and the Open Source Software Course:

The one thing dominating almost every headline (and e-mail subject line) is COVID-19. A disease that was but a murmur in the news a month ago, has upended normal life, particularly for everyone in New York City, and has changed what it means to work or attend school for millions of America. I can thankfully say that neither I, nor my family, nor anyone I know has been affected by the disease and I sincerely hope that it remains that way for me, and for you as well, dear reader. That said, I do want to note for posterity how it has affected my education, and what I believe the situation will be in 1 and 2 months.

Hunter College, along with the entire City University of New York, has, of course, transitioned to online or “distance” learning. From the first announcement of that change, I was grateful for the fact that I am studying Computer Science in 2020, as there is little that cannot be distributed these days. Testing my code on Hunter machines does not require me to even leave the house and the academic and professional software development workflows already revolve around distributed systems and services like Git and Github. Of course, the switch from in-person classes to online classes in the comfort of my own home, is a bit different but not nearly the predicted “disaster” so much of social media made it out to be. The greatest impacts seem to be the inevitable awkwardness that stems from trying to foster an atmosphere of collaborative learning and conversation via online chat services, and the struggle for professors to gauge the reactions and understanding of students during class time. However, even the first week of this new format went done without any major hitches, and I found my classes to still be enjoyable.

As for where I and other students will be in one to two months is hard to say. The great public push is on trying to “flatten the curve” and stop the spread of the disease, but due to issues with testing and without full understanding of the disease, the extent of exposure and the continuing consequences are still unknown. What I will say is that I don’t think it was pessimistic to transition to distance learning for the entire duration of the semester. I think we will, unfortunately, all still largely find ourselves at home, trying to carry on with school and work, while only making a brief run outside for fresh air and sanity, for next couple of months. But if week one of online learning (and many online transitions for many students and professionals) can go this well, and if this distancing has the intended effect of slowing the spread and not disrupting the critical services we all need to stay alive, then I believe that we’ll continue to succeed in our academic pursuits.

FOSS Project Log:

Friday, March 20

On Friday I continued to review the Atom Flight Manual. Reading the Manual is a bit of a balancing act between learning, and looking for valid issues with the document, that my project team and I can tackle as fixes. Finding the latter if you’re focused so deep you can’t see the forest for the trees can be a real problem. Therefore, where I believed a technical example, as with the package creation sections (ex: “Package: Word Count”), would help my understanding of Atom’s functionality and use of web technologies, I read in depth. (I only have minor experience with web development, and really no experience with the intersection of web and native applications using Electron, so I am trying to pick up what I can, where I can.) Where the Manual touched on casual customizations or aspects with which I am unlikely to have any interaction, I skimmed. Thankfully, through this, I did manage to find a few instances where the Manual would greatly benefit from images or additional explanation of concepts, some of which are not even defined at all. Those issues, now split into sections into categories of active work (see below), for later review, or resolved, can, as always, be found in our online notes.

Saturday, March 21

Saturday featured an over two hour call with Jessica and Boubacar to review our next steps and discuss what potential issues we had come upon. (Hence the aforementioned partitioning of our issues into the different status groups.) The one item that continued to stand out above all others is the set of problems with the “Hacking the Atom Core” section of the Flight Manual. This was our first stop in getting a development version of Atom set up, and we have since come to understand that it is not a good first-stop for anyone interested in contributing to Atom. First and foremost, the section is very unclear as to what is actually involved in setting up a development version of Atom, because of an underlying assumption that the reader has already downloaded and installed a pre-built version of Atom. (Nowhere in the Manual does it specify that this is required.) Thus, a new reader is likely come to the same conclusion as us, that getting involved is as simple as cloning the repository and running the bootstrap script. (The requirements for even running the bootsrap script are down in the build section, and should definitely be relocated.) No purpose is given for the following build section, and none will seem obvious to a new reader. But, as Boubacar realized, the build section is, in fact, vital. Because of the aforementioned assumption, the Manual misses the point and suggests that what is important to get started on developing for Atom is running Atom in dev mode, which…cannot be done if you do not have a compiled version of Atom.

Refining these thoughts into a concrete text revision proposal will take some further time, but, as we realized, submitting this and other helpful additions as issues, which we will volunteer to tackle, must of course come first. We are not the first to point out concerns with the “Hacking the Atom Core” section - see this issue - and in fact our next agreed-upon task is to review existing issues to make sure we are not duplicating anything, but we are hoping that a reaffirmation of difficulty with this section, combined with proposals for changes, will get the needed attention. While we are wrapping up our review of the Manual and submitting these issues, we also aim to look back at the “Core” repositories with greater knowledge, and see where we can dive into programming issues.

Other Course-Related Activity:

This week we were tasked with making our first two edits to Wikipedia articles. Per last week’s blog, where I mentioned some starting places of interest, I went to work on military history articles in need of revision. My first two contributions are listed under the contributions tab, and I will be discussing the article searching and editing experience in next week’s blog.

Written before or on March 22, 2020