Presentations and Recitations

Presentations are scheduled at recitation time. Attendance is mandatory. An attendence sign-up sheet will be distribtuted at each recitation. There is some time left by the end of the recitation section for questions on the lecture material and projects.

Oral Presentation and Presentation Paper Requirements

An oral classroom presentation is required by each student, see the presentation schedule below. The presentation material (the presentation slides) together with a paper describing your investigation of the topic should be submitted for grading at the end of the term before exam week starts.

Presentations will be held at recitation time on Wednesdays 12:20PM according to a presentation schedule. Presentations in PPT or other electronic format is required (see below). Upload your presentations to your home page to enable classroom PC access. You can bring your laptop computer, but be prepared to run the presentation from the classroom PC in case the laptop cannot be used. Presentations should take 12 minutes. Presentations must not exceed 15 minutes and will be terminated when 15 minutes have passed.


Students with disabilities will be given an alternative option for the oral presentation. Please contact the instructor to discuss these options.


The format of the oral presentation is electronic in a format of your chosing, e.g. OpenOffice, PowerPoint, PDF, or text. However, visual aids such as images, tables, and graphs must be presented in a clearly understandable format. You may use the whiteboard (or blackboard) if you wish to comment on questions, but you must not depend on them.

The presentation paper should have a title page (with title, author, and date), a short abstract that summarizes the content in one paragraph, an introduction section that states the question/problem to investigate with a discussion on how you approached the problem, the paper body (several sections), a conclusion that summarizes your results and findings, and a bibliography of references to papers and web sites you consulted.

Evaluation and Grading

The grade breakdown of the presentation component of the course (10% of the total final grade) is 5% credit for the oral presentation and 5% credit for the paper.

The evaluation of the quality of the presentation (as well as the paper) will take into account the originality, relevance, and currency of information that you present, as well as the clarity of the presentation. The presentation will be scored according to the following table.

Grading criteria for oral presentations (50 pts possible):

Please be prepared to start on time when you are presenting. If you get started late not only will you lose points, but we will have difficulty finishing within the class period.

A presentation will be graded with 0 points if you don't show up, or spent less than 8 minutes on your presentation, or if your presentation material is not legible.

The presentation paper will be graded using the following criteria (50 points possible):

The paper length is not limited, but should be at least four pages of double-spaced 11pt font.

Warning on plagiarism: do not copy/paste material without properly quoting the text and citing the recourses. For example, if you found a definition of a term in a paragraph that you would like to refer to, use the common citation requirements: "...sentence..." [ref], where ref is a citation in your bibliography. Note that quotes are needed when you copy text literally.

Presentation Schedule

Four presentations are scheduled per recitation section on Wednesdays from 12:20PM to approx. 1:10PM. For a description of the presentation topic, see below.

Date Presentation Topic :- Name Date
2/10 A.1 :- Anthony Marley
A.2 :- Seth Kerr
A.3 :- John Cook
A.4 :- Ciaran Hannigan
2/17 A.5 :- Amor Avhad
A.6 :- Kyle Stark
A.7 :- Benjamin Fagin
A.8 :- Abigail Doragh
2/24 A.9 :- Steven Burgart
A.10 :- Kenneth Kaufmann
A.11 :- Jeffrey Natiuk
B.1 :- James Hoy
3/3 B.2 :- Jason Boylan
B.7 :- Nathan Folkert
B.4 :- Ralph Dogue
B.5 :- Matthew Margolis
3/10 Spring break 3/10
3/17 B.6 :- Shanief Webb
B.3 :- Patrick Harrity
B.8 :- Spencer Border
B.9 :- Jason Eick
3/24 B.10 :- Justin DeBrabant
B.11 :- Brian Ritchson
B.12 :- Robert Hall
B.13 :- Bryan van Solt
3/31 B.14 :- David Guidry
B.15 :- Matt Fisher
C.1 :- Ryan Gidus
C.2 :- Brian Wilder
4/7 C.3 :- Ernesto Serrano
C.4 :- Christopher Burt
C.5 :- Sean Easton
C.6 :- Alesha Lambert
4/14 C.7 :- Patrick Dwyer
C.8 :- Travis Perry
C.9 :- David Cooper
C.10 :- Yuan Yao
4/21 C.11 :- Patrick Tully
C.12 :- Justin Danielson
C.13 :- Curtis Gagliardi
C.14 :- Jose Vega

Presentation Topics

The presentation topic assignments are decided by the instructor based on student preferences. Students can pick one topic from each of the three categories A, B, C below, thus indicate three preferenes. The instructor will match a topic to a student based on preferences, though there is no guarantee that all students can be matched if the presentation topics of their choice is popular. The preference selection sheet is downloadable .doc here.

A. Scripting:

  1. Ruby: describe the scripting language Ruby.
  2. Python: describe the Python scripting language.
  3. PHP: describe the server-side scripting language PHP.
  4. JavaScript: describe the JavaScript client-side scripting language.
  5. Perl: describe the Perl scripting language.
  6. LSL: describe the Linden scripting language used in Second Life.
  7. ActionScript: describe Apple's ActionScript scripting language.
  8. VBScript: describe the Visual Basic Scripting Edition language.
  9. Lua: describe the Lua scripting language.
  10. APL: describe the APL programming language known for "throw-away programming"
  11. NXT-G: describe the NXT-G graphical programming language developed by National Instruments in LabVIEW for LEGO NXT. Ask the instructor for access to LabVIEW for NXT if you have none.

B. Programming:

  1. COBOL: describe the COBOL programming language.
  2. Objective-C: describe the C++-like OO programming language. How does it compare to C++?
  3. Forth: describe the Forth programming language.
  4. Go: describe Google's programming language Go.
  5. D: describe the programming language D.
  6. Scala: describe the Scala programming language.
  7. Mercury: describe the logical programming language Mercury that is based on Prolog and Haskell concepts.
  8. ADA 2005: describe the ADA 2005 programming language.
  9. Delphi: describe the Pascal-like Delphi programming language.
  10. HPF: describe the High-Performance Fortran programming language. How is parallel execution specified in HPF? How are distributed arrays specified?
  11. Erlang: describe the functional language Erlang inspired by Prolog. Show the similarity of Erlang variables to Prolog variables.
  12. Caml: describe the Caml programming language.
  13. Eiffel: describe the OO programming language Eiffel and the "design by contract" principle.
  14. Icon: describe the Icon programming language.
  15. Basic: describe the original Basic programming language or one of the many dialects such as Quick Basic (do not pick Visual Basic - VB is already covered under VBScript).

C. Tools and Specification Languages:

  1. Lint: describe the "lint" tool to find problems in C code. Also discuss its relative "splint" for finding security vulnerabilities.
  2. Doxygen: describe the "Doxygen" tool and how it can be used to document C and C++ source code.
  3. Make: describe the "make" utility and its specification language that defines the project build dependences and commands. For this topic a focus on advanced features is preferred.
  4. Eclipse: describe the "Eclipse IDE" and show its support for C, C++, or Java project development.
  5. SWIG: describe the "SWIG" specification language and tool.
  6. Z: describe the specification language based on "Z notation" (Zermelo–Fraenkel set theory).
  7. VDM: describe the Vienna Development Method (VDM) and specification language VDM-SL and/or VDM++.
  8. XML and XML Schema: describe the XML markup language format and the role of XML Schema to define valid XML (XML Schema, like a class definition, specifies structure while XML instances, like objects, contain valid data).
  9. XQuery: describe the XQuery XML query language.
  10. gSOAP: describe the "gSOAP" C/C++ XML data binding tool. What C/C++ type declaration extensions does it use to bind XML to C/C++? Give an example client/server implementation.
  11. VHDL: describe the VHDL hardware description language. Is VHDL also suitable as a programming language or only as a hardware design language? Why not use C to describe hardware?
  12. TeX/LaTeX: describe the TeX/LaTeX document markup language. The LaTeX "programming language" has markup syntax and programming constructs such as "if" and TeX operates by macro expansion that resembles function invocation.
  13. MATLAB: describe the MATLAB programming language for science and engineering.
  14. SAS: describe the SAS system and its 4th generation programming language.

Copyright: Robert van Engelen, Florida State University, 2010.
Last modified: Tuesday, March 16, 2010