Skip to content

Commit

Permalink
New sample for acmengage
Browse files Browse the repository at this point in the history
  • Loading branch information
borisveytsman committed May 29, 2022
1 parent 8cef498 commit e099718
Show file tree
Hide file tree
Showing 4 changed files with 199 additions and 88 deletions.
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -28,4 +28,7 @@ samples/sample-*.pdf
*.bcf
*.run.xml
samples/ACM-Reference-Format.bst
samples/*.tex
samples/*.tex
samples/*.bbx
samples/*.cbx
samples/*.dbx
7 changes: 7 additions & 0 deletions acmart.dtx
Original file line number Diff line number Diff line change
Expand Up @@ -1058,6 +1058,13 @@
% \url{https://creativecommons.org/licenses/} for the explanation).
% This command should be used in the preamble only.
%
% Material published under Creative Commons license should include
% the corresponding icon. A modern \TeX\ distribution includes these
% icons in the package \textsl{doclicense}. In case your distribution
% does not have them, ACM provides a file \path{ccicons.zip} with
% these icons. Just unzip it in the same directory where your
% document is.
%
% The ACM submission software should generate the right command for you
% to paste into your file.
%
Expand Down
10 changes: 9 additions & 1 deletion samples/sample-base.bib
Original file line number Diff line number Diff line change
Expand Up @@ -1508,12 +1508,20 @@ @online{TUGInstmem

@online{CTANacmart,
author = {Boris Veytsman},
title = {acmart---{C}lass for typesetting publications of {ACM}},
title = {acmart---{Class} for typesetting publications of {ACM}},
year = 2017,
url = {http://www.ctan.org/pkg/acmart},
lastaccessed = {May 27, 2017}
}

@online{doclicense,
author = {Robin Schneider},
title = {The \textsl{doclicense} package},
year = 2022,
url = {http://www.ctan.org/pkg/doclicense},
lastaccessed = {May 27, 2022}
}

@ARTICLE{bowman:reasoning,
author = {Bowman, Mic and Debray, Saumya K. and Peterson, Larry L.},
title = {Reasoning About Naming Systems},
Expand Down
265 changes: 179 additions & 86 deletions samples/samples.dtx
Original file line number Diff line number Diff line change
Expand Up @@ -982,6 +982,12 @@ massa et mattis lacinia.
%%
%% The first command in your LaTeX source must be the \documentclass command.
\documentclass[acmengage]{acmart}

%% \BibTeX command to typeset BibTeX logo in the docs
\AtBeginDocument{%
\providecommand\BibTeX{{%
Bib\TeX}}}

%% Rights management information. This information is sent to you
%% when you complete the rights form. These commands have SAMPLE
%% values in them; it is your responsibility as an author to replace
Expand All @@ -997,42 +1003,44 @@ massa et mattis lacinia.
\acmDOI{XXXXXXX.XXXXXXX}

\begin{document}
\title{Introduction to Data, Functions, and Mathematical
Reasoning}
\author{David Liu}
\email{[email protected]}
\title{EngageCSEdu Submission Title (600 char limit)}
\author{Author One}
\email{[email protected]}
\affiliation{%
\institution{University of Toronto}
\city{Toronto}
\country{Canada}}
\institution{University of XXX}
\city{SomeCity}
\country{SomeCountry}}

\author{Mario Badr}
\email{[email protected]}
\author{Author Two}
\email{[email protected]}
\affiliation{%
\institution{University of Toronto}
\city{Toronto}
\country{Canada}}
\institution{Some School}
\city{SomeCity}
\country{SomeCountry}}

\author{Shannon Komguem}
\email{[email protected]}
\author{Author Three}
\email{[email protected]}
\affiliation{%
\institution{University of Toronto}
\city{Toronto}
\country{Canada}}
\institution{A3 affiliation}
\city{SomeCity}
\country{SomeCountry}}

%% The synopsis is a name for the abstract
\begin{abstract}
This assignment is composed of a series of exercises that give
students an opportunity to practice skills fundamental to reasoning
in computer science. Designed for those with no background in
computer science, the questions give students an introduction not
only to computer programming, but also to the field of computer
science as a whole. For example, the comprehension and regression
exercises introduce the use of mathematics and statistics in CS,
while the written exercises demonstrate how to translate real-world
problems into problems solvable by a computer. We have also
included debugging exercises that encourage students to start
thinking through their own coding roadblocks.
A required section. The synopsis is similar to a paper abstract. The synop-
sis will display in the digital library as the abstract. The synopsis should
be copied into ScholarOne as the abstract for submission. The synopsis
should contain an overall description of the Open Educational Resource
(OER). The synopsis lets other instructors quickly understand what this
material is about. Include any learning objectives and a description of the
approach taken. Put details about implementation and necessary prerequi-
site knowledge in the Recommendations section. The following template is
a suggested format:
This [assignment/project/homework/lab] helps students gain experience
and proficiency with [ e.g. arrays, for/while loops, conditional statements.]
Students will learn how to [skills acquired].
The reader should get an understanding of what topic is associated with
the OER and what, if anything, the students will be asked to do.
\end{abstract}

%% Metadata for the course
Expand All @@ -1044,77 +1052,162 @@ massa et mattis lacinia.

%% Keywords
\keywords{Arithmetic Operators, Assignment Statements, Comprehension,
Integers, Strings, Lists, Sets, Dictionaries, Logic, Reasoning,
Debugging, Statistics, Modules, Data}

Student Voice}
\maketitle

\section{Engagement Highlights}

The assignment is meant to be used in beginner programming courses
where it is expected that students have little to no programming
background and are curious to see what is in store for them in future
CS courses and projects. The exercises aim at teaching a variety of
core CS topics while only requiring basic coding skills. For example,
since Python comprehension syntax is reminiscent of set builder
notation, the comprehension exercise provides an intriguing crossover
between CS and mathematics. Furthermore, the assignment is punctuated
with an exercise that uses a seemingly complicated regression model
and graphing library that students implement using very simple
code. This serves to show them that they can create sophisticated
projects with basic code, and hopefully leaves them wondering what
they will be able to build after months, years, and even decades of
studying computer science. The regression exercise also uses
real-world datasets and interdisciplinary concepts that may be
familiar to them, such as the “line of best fit”. This gives students
an opportunity to relate their work in this assignment to their
lived-experiences and interests.
A required section. This section of the paper should detail how the OER engages the students. The engagement must be based on at least one evidenced-based teaching practice known to broaden participation or improve student learning. Examples include the practices from the NCWIT Engagement Practices Framework: using meaningful and relevant content, making interdisciplinary connections to CS, addressing misconceptions about the field of CS, incorporating student choice, giving effective encouragement, mitigating stereotype threat, offering student-centered assessments, providing opportunities for interaction with faculty, avoiding stereotypes, using well-structured collaborative learning, or encouraging student interaction. Other potential evidence-based practices include using culturally relevant pedagogy, or universal design for learning. All submissions must identify what evidence-based practice they incorporate and be specific in how the practice is included within the OER.

Information on how to differentiate this assignment (i.e. provide different versions for students of differing abilities) could also go in this section. It could also outline how instructors might modify
the assignment to increase enhance student engagement. If these modifications are extensive, they could also be discussed in their own section.

\section{Recommendations}

The project can be assigned very early in the course. Students are
ready to start it as soon as they have learned about Python
expressions, data types, functions, and comprehension. The
comprehension exercises can also be converted to loop exercises
depending on the course content. The assignment encourages students to
exercise multiple skills that are pertinent to computer science,
including following instructions, using mathematical reasoning (as
seen in the written and comprehension exercises), and critical
thinking (as seen in the regression exercise).

The assignment lets students practice converting mathematical
expressions to Python, and importing and using modules. The regression
exercise and the use of the plotly library can be modified to an
activity that is more relevant to your group. For example, it can be
replaced with an animation exercise for which students write equations
to determine movement, among many other creative alternatives which
allow students to practice the same skills. The datasets for the
regression exercise can be replaced with ones of more interest to
students in order to increase

It is important to emphasize that students should not get caught up in
the helper functions provided in the starter code and should focus on
following the instructions in the handout. Instructing them to not
over-analyze the implementation of the helper functions can also serve
as a lesson on code abstraction.

\section{Resource Details}

In the zip file, \path{assignment.zip}, you will find the following
files:
A required section. In this section authors should give specific recommendations and advice to other instructors who might want to adapt this resource for their own classroom. Important information to include in this section includes identifying how much time is required to introduce or complete the task, potential pitfalls or student struggles, lessons learned from using the OER, and any information on extensions or differentiation for students. Think of this section as the information you would provide a colleague before they use this OER in their classroom.

\section{Additional Sections}

Optional. Authors may add additional sections to fully explain all the pieces of their OER. It can (and probably should) have multiple sections and the section headers are at the discretion of the authors. Sections may expand on information presented in the synopsis, recommendations, and engagement highlights. Suggested sections include: Introduction, Background Material, Implementation Guidelines, Marking Guidelines, Extensions and Modifications, Pitfalls, Acknowledgements, Student Feedback, and References.

\section{Related Online Resources}

EngageCSEdu requires that all materials that are part of the OER submission be included with the submission and not just URL links to materials stored on other sites. However, any related background or reference material used to provide instructor or student knowledge as opposed to instructional material may be included as citations within the paper
(see section \ref{sec:citations})
or you may include a numbered list of external links and extensions in an optional section titled ``Auxilary Materials" that should come immediately before "References".

\section{Materials}

A required section. You must provide a list of the contents of the zipped file including a description of each contained file. This may be provided as text or as an unordered list.

A single zipped file containing all the OER instructional materials including assignment handouts / specification, starter code, rubric, solution, etc. will also be submitted.

\section{Meta-Data}

This section is included in the template to explain the choices for the meta-data at the top of the paper. It should not be included in the final paper submission.

\subsection{Course}

Current courses are:

\begin{itemize}
\item the assignment handout in markdown
\item starter code files
\item a \LaTeX\ template for students’ written answers \cite{Lamport:LaTeX}
\item a folder containing datasets for the regression exercise.
\item CS0 -- a breadth first introductory computing course similar to Exploring Computer Science or AP CS Principles
\item CS1 -- an introductory programming course covering topics normally associated with an imperative or functional programming course. Similar to an AP CS A course
\item Data Structures -- a follow-on course occurring after CS1 that introduces linear and non-linear data structures including implementation and usage
\item Discrete Math -- a course covering discrete mathematical structures such as integers, graphs and logic statements. This may include logic, set theory, combinatorics, graphy theory, number theory, topology, etc.
\end{itemize}
The assignment handout is expected to be edited and reviewed by the
instructor before being shared with students.

More than one course may be selected. If you are submitting an OER for a special topics issue of Engage, please discuss the appropriate course choice with the guest editors of the special issue.

\subsection{Programming Language}
Authors may select all that apply from the following list:
\begin{itemize}
\item C
\item C++
\item C\#
\item Java
\item JavaScript
\item Processing
\item Python
\item Racket (DrScheme)
\item Scheme
\item Scratch
\item Pseudocode
\item Other
\item None
\end{itemize}

\subsection{Resource Type}
One resource type must be selected. Current list to select from includes:

\begin{itemize}
\item Assignment -- the most common OER type. Typically represents a task assigned to individual or groups of students that will be completed outside of class time.
\item Lecture slides -- an annotated set of presentation slides to introduce or explain a topic, typically a cutting-edge research topic, to a more lay audience. An example might be explaining a specific cryptography algorithm, blockchain, or an AI / ML solution to a problem.
\item Lab -- this represents a task assigned to an individual or group of students to be completed under supervision, usually during a closed-lab model
\item Project -- an assignment that is of a longer duration, perhaps multiple weeks to an entire term
\item Tutorial -- a task usually completed by an individual to learn some material on their own
\item Other -- any other type of OER that does not fit into one of the above categories
\end{itemize}

\subsection{CS Concepts}
This is selectable from the ontology of topics found at \url{https://www.engage-csedu.org/ontology}. Up to three topics may be selected. Eventually this page will be a tool allowing you to select up to three nodes in the tree and then copy / paste the descriptive text into your document and the submission system.

\subsection{Knowledge Unit}
Authors will select the most appropriate one from the following list:

\begin{itemize}
\item Programming Concepts -- anything involving programming
\item Data Structures -- anything involving data structures
\item Software Development Methods -- if the OER centers around software development (i.e., requirements gathering, testing, maintenance, code reviews) rather than the actual programming content
\item Discrete Math -- anything involving discrete math
\item N/A -- not applicable
\end{itemize}

\subsection{Creative Commons License}
During the submission process on ScholarOne, authors will select one create commons license from the following list:

\begin{itemize}
\item CC BY-SA
\item CC BY-NC
\item CC BY-NC-ND
\item CC BY-NC-SA
\item CC BY-ND
\item CC BY
\end{itemize}

The correct typesetting of materials under creative commons license
requires the corresponding CC icon. A modern \TeX\ distribution
includes these icons in the package \textsl{doclicense}
\cite{doclicense}. In case your distribution does not have them, ACM
provides a file \path{ccicons.zip} with these icons. Just unzip it in
the same directory where your document is.

More information on Creative Common Licensing may be found at \url{https://creativecommons.org/licenses/}.

\section{Submission}
When you make a submission using ScholarOne you must upload:

\begin{itemize}
\item an anonymized version of this paper for review
\item a zipped file containing all the student-facing materials. The materials in this file must also be anonymized for the purposes of fully anonymous review.
\end{itemize}

\section{Citations and References}
\label{sec:citations}
We recommend using \BibTeX\ to prepare your references. The bibliography is included
in your source document with these two commands, placed just before
the \verb|\end{document}| command:
\begin{verbatim}
\bibliographystyle{ACM-Reference-Format}
\bibliography{bibfile}
\end{verbatim}
where ``\verb|bibfile|'' is the name, without the ``\verb|.bib|''
suffix, of the \BibTeX\ file.

Here are a few examples of the types of things you might cite in an EngageCSEdu submission:
a book \cite{Kosiur01},
a journal article \cite{Abril07},
an informally published work \cite{Harel78},
an online document / world wide web resource \cite{Thornburg01, Ablamowicz07},
a video \cite{Obama08},
a software package \cite{R}, and an online dataset \cite{UMassCitations}.

For other examples, see the file sample-acmsmall-conf.tex \cite{CTANacmart}.

\section{Auxiliary Materials}
This section is optional, but if included must immediately precede the References section. If there are no References, Auxiliary Materials should be last. This should be
a numbered list of URLs with an optional brief description of the content found at each URL. Here is an example.
\begin{enumerate}
\item \url{https://somenews.org/xxx/} A news article relevant to this OER.
\item \url{https://somesite.gov/xxx/} A relevant government report.
\item \url{https://someplace.edu/xxxx/} A public data set of interest.
\item \url{https://github.com/xxxx/} A public github project that is related.
\end{enumerate}

\bibliographystyle{ACM-Reference-Format}
\bibliography{sample-base}



\end{document}
%</acmengage>
%</acmengage>

0 comments on commit e099718

Please sign in to comment.