Survey paper (Part 2) Deadline: end of Friday, April 7 ### Copyright (c) 2023 by Gene Cooperman (gene@ccs.neu.edu) ### This file may be freely copied and modified as long as ### this copyright notice remains. ### (While it is not required, it is hoped that some people will contribute ### back text or suggestions on how to improve this series, in order ### to help students and others improve their technical writing.) Part 2 of the survey paper is to transform your stream-of-consciousness writing into a draft, global organization of your thoughts. The work will consist of three parts. The first two parts are easy. The third part requires some thought. 1. Choose title and section headings. At the beginning of your file, please add title/author/date: using Markdown syntax: --- title: My Title author: My Name date: My Date --- [ WARNING: Your title must be on a single line, and you cannot use the character ':' in your Markdown title. ] And at the beginning of your "Introduction" section, please include the titles and URLs of the three papers that you are surveying (or optionally more than three if you so choose).] Please list them using Markdown syntax: * [in text label](url) [See Section '9.2: External links' in https://www.flutterbys.com.au/stats/tut/tut17.3.html for this syntax.) 2. Reorganize the placement of your paragraphs to appear in the correct section and in the correct order. 3. *** Read the topic sentences of your paragraphs to make sure that they tell a connected story. *** [ In order to accomplish this, you will likely require some transformations. Some examples are: a. Move a sentence within the paragraph to be the first sentence (topic sentence) for that paragraph. b. If you seem to be skipping a step in your story, then maybe you can split a paragraph into two paragraphs, in order to create an extra topic sentence to tell your story. c. If you still seem to be skipping a step in your story, then maybe you forgot to write something important. Add an extra paragraph to fill in your story. d. If a part of your story is repetitive, or too detailed, then consider merging two or three paragraphs into a single paragraph. e. If you still have some leftover paragraphs that don't fit your story, then leave them in the correct section, but add a label, "EXTRA:", in front of that topic sentence. This might be "dead text" that will be thrown away. But it might also be the extra raw material to later fill in some missing information in one of your story paragraphs! f. You may find that after splitting a paragraph, you now have some paragraphs with only one sentence or two sentences. Don't worry about it for now. First, get your story right, and later we'll fix the details. In order to help you to decide if your topic sentences truly tell a coherent story, I have provided a Python script that will extract the topic sentences from your Markdown file, and print the topic sentences inside each section of your Markdown file as if the topic sentences together formed a separate paragraph. To use this, copy the file: https://course.ccs.neu.edu/cs7600/WRITING/topic-sentences.py to a local directory. Then do: python ./topic-sentences.py MYFILE.md or: python3 ./topic-sentences.py MYFILE.md [ This should work with most versions of Python, on any platform that has a shell for text-oriented commands. The Python script also sort of works with latex files, for your personal use. But please use Markdown for this assignment. ] When you are thinking about section headings and a story, to help organize your survey, here are some potential section headings that may help you. Choose a subset of sections, and maybe add new ones of your own. * Introduction (very common choice -- describe what is the domain or theme) * Background (Is your survey self-contained for a general C.S. audience? If not, fill in the missing information briefly, with pointers to papers/books that contain more details. For now, you can just highlight papers/books inline with title and URL.) * Approach (What are some of the approaches in this domain? Think creatively, and don't limit yourself to the specific approaches listed in your surveyed papers. I'm not asking for additional research. Maybe your idea for a new approach is: "Another approach would be to bring 30 high school students into a single room, and give each high school student the computer instruction that they should simulate." Then just write exactly that. There are no wrong ideas here. This is your opinion, and your are the expert on your opinions.) * Cross-cutting themes (Maybe several surveyed papers re-use the same ideas inside some distinct approaches.) * Synergistic approaches (Are there possibilities for combining several of the surveyed approach in one software system?) * Strengths and weaknesses (And pay special attention to weaknesses. The authors will not usually tell you their weaknesses. Be creative in expressing new opinions.) * Conclusion (Is this a mature domain or area of research? If not, what do you see as potential new advances in the next five years?) === Using Markdown format: As before, you will submit a text file. But this time it will be a _Markdown_ file, with filetype: .md (No .tex or .docx, please.) Your markdown (.md) file must still contain a minimum of 5,000 words (as measured, for example, by 'wc'). So, if you delete some sentences, you may have to create additional sentences relevant to your new survey organization. Markdown is a trivial format to learn. You start with '#' to introduce a section heading, '##' to introduce a subsection, and an empty newline to introduce a paragraph. Then you look up how to have different types of lists, italics and bold text, and anything else that you might need. I recommend using 'pandoc'. There is an excellent tutorial on Pandoc here: https://www.flutterbys.com.au/stats/tut/tut17.3.html I doubt that you will need it, but here is the full Pandoc manual: https://pandoc.org/MANUAL.html or another version of the manual: https://garrettgman.github.io/rmarkdown/authoring_pandoc_markdown.html The Pandoc binaries are available on many platforms. But as long as you have learned vi (or vim or emacs) on Khoury login, the simplest thing will be to use the 'pandoc' command on Khoury login. For that, see: man pandoc or: pandoc -h To play with 'pandoc', create a file, tmp.md: --------------------------------------------- --- title: This is the title author: D. Author date: 14-02-2013 ... # Section 1 Some text --------------------------------------------- And then produce your favorite output using the flags for "from" and "to": pandoc --standalone -f markdown -t latex tmp.md -o tmp.tex [ Followed by: pdflatex tmp.tex ] pandoc --standalone -f markdown -t html tmp.md -o tmp.html [ Followed by: lynx tmp.html ] pandoc --standalone -f markdown -t docx tmp.md -o tmp.docx pandoc --standalone -f markdown -t textfile tmp.md -o tmp.txt-pandoc [ I use '.txt-pandoc' to protect you in case your input is .txt'. Also, pandoc does not number sections in 'plain' mode. ] But that's only for your convenience in easily visualizing your final paper. === Submitting: You will submit _only_ your Markdown (.md) file (without using 'tar'). As usual, you will submit with a submit script: /course/cs7600/homework/submit-cs7600-hw6-surv-part2 mysurvey.md