Technical Communication for the Social, Behavioral, and Management Sciences

Author
Affiliation

John Kulas, PhD

TBD

Published

January 1, 2025

Overview

This is a working outline of the curricular syllabus1 for a 15-week course on communication via literate programming principles for data science applications.

Traditionally, within the social, behavioral, and management sciences, your analyses were performed within a secondary platform2 – completely independent from your primary authoring space (e.g., a typewriter, Word, PowerPoint). Literate programming principles obviate this orientation… the analyses and authoring have equal priority and take place within the same software space and your orientation is that of a storyteller.

Benefits of adopting a literate programming workflow include greater:

  • code efficiency
  • error correction
  • collaboration
  • reproducibility
  • reuseability

The primary programming languages accommodated as of January 2025 are:

  • R
  • Python
  • Javascript
  • Julia
Note 1: Languages

The “glue” of literate programming is markdown. Programming language preferences (such as R) should be considered secondary to the more general practice of wrapping analyses into supporting documentation.

The focal authoring platform is Quarto, although historical (e.g., \(\LaTeX\)3) and contemporary alternatives (e.g., rMarkdown) also will be addressed.

Intended audience

Graduate students within the social, behavioral, and management sciences who would like to learn how to wrap analyses and supporting documentation within one authoring platform toward producing occupationally relevant…

Course content Version 0.1 is primarily informed by end-use-cases of Industrial Psychologists who gravitate toward data science applications, but the hope is that Versions X.X will reflect broader occupational applications.

Full curricular content (Version 0.1) is located in Table 1.

Course schedule

Table 1: Tentative schedule
Week Section Topic
Week 1 Fundamentals Intro
Week 2 Platforms
Week 3 Languages
Week 4 markdown & \(\LaTeX\)
Week 5 html, css & packages
Week 6 Products Presentations
Week 7 Manuscripts
Week 8 Theses & Dissertations
Week 9 Dashboards
Week 10 Technical Reports
Week 11 Feedback Reports
Week 12 Websites
Week 13 Books
Week 14 Distribution Security
Week 15 Sharing

Purpose

The purpose of this course is to introduce practitioners to a work process that integrates all components of work into one platform. This is not merely “using rMarkdown” – this is a broader philosophy of work. For example, reproducible research standards and principles are facilitated by adopting literate programming into work processes, but reproducibility (e.g., Stodden, Leisch, and Peng 2014) is only one of many derivatives of literate programming.

This syllabus, for example, showcases a few pedagogical enhancements:

  • External resources and opportunities for feedback are accessible via links in the upper right-hand toolbar.
  • Annotation and note-taking capabilities are enabled (via hypothesis) and accessed via floating icons located in the far upper-right sidebar of the browser window.
  • Screen reader functionality is enabled by default (screen-readers will pick up alternative text descriptions that are provided for each image).

These are just a few of very many latent features (quite easily) accessible when employing literate programming practices – and we haven’t even discussed anything “analytical” yet…

The next few pages showcase some additional capabilities currently available within literate programming platforms that may further entice a data scientist practitioner to adopt literate programming principles.

For additional encouragement regarding literate programming adoption, please see our customer sales rep pictured in Figure 1.

the pink panther, an American cartoon originating in the 1950's
Figure 1: C’mon… ya know you should be leverage literate programming in your work!!

  1. and maybe eventually “textbook”-ish content↩︎

  2. Excel, GAUSS, SAS, SPSS, STATA, etc…↩︎

  3. \(\LaTeX\) is technically a typesetting system commonly executed within an application such as Overleaf that compiles \(\LaTeX\) content into formatted documents.↩︎