Bøger / faglitteratur

Guide to Programming for the Digital Humanities : Lessons for Introductory Python


Beskrivelse


Summary: As an introduction to programming for the Digital Humanities (DH), this book presents six key assignments oriented on DH topics. The topics include Computing Change Over Time (calculating burials at a historic cemetery), Visualizing Change Over Time (visualizing the burials at the historic cemetery), Textual Analysis (finding word frequencies and “stop words” in public domain texts), XML Transformation (transforming a simplified version of XML into HTML styled with CSS), Stylometry (comparing the measured features of graphic images), and Social Network Analysis (analyzing extended relationships in historic circles). The book focuses on the practical application of these assignments in the classroom, providing a range of variations for each assignment, which can be selected on the basis of students’ specific programming background and skills; “atomic” assignments, which can be used to give students the experience they need to successfully complete the main assignments; and some common pitfalls and gotchas to manage in the classroom. The book’s chief goals are to introduce novice computer science (CS) students to programming for DH, and to offer them valuable hands-on experience with core programming concepts.

Indhold

Seneste udgave,

Intro -- Contents -- 1 Introduction -- 1.1 A Call to the Digital Humanities -- 1.2 Brief Overview of Digital Humanities -- 1.3 How This Book Is Arranged -- 1.4 Only the Beginning -- References -- 2 Introductory Programming-Common Topics -- 2.1 The Introductory Programming Curriculum -- 2.2 The Topics, as Suggested by the Curricula 2013 Report -- 2.3 Topics of a Typical Introductory Programming Course in Python -- 2.3.1 Introduction to Computer Basics and Programming -- 2.3.2 Accessing the IDE and Basic Python Syntax -- 2.3.3 Variables, Numbers, and Expressions -- 2.3.4 Instantiating Objects and Introduction to Graphics in Python -- 2.3.5 Working with Strings and Other Sequence Structures -- 2.3.6 Using Pre-Defined Functions and Creating User-Defined Functions -- 2.3.7 Creating and Testing Branching Structures -- 2.3.8 Creating and Managing Looping Structures -- 2.3.9 Working with Lists and Arrays -- 2.3.10 Program Algorithms and the Design Process -- 2.3.11 Brief Introduction to Object-Oriented Programming in Python -- 2.4 Basic Approaches to Teaching the Topics -- References -- 3 Digital Humanities-Special Considerations for the Programmer -- 3.1 Digital Humanities Programming -- 3.2 Popular Analytical Approaches to Digital Humanities -- 3.3 Special Considerations in Digital Humanities -- References -- 4 Introduction to the Digital Humanities Assignments -- 4.1 Finding the Balance Between CS and DH -- 4.2 General Assignment Management Tips -- 4.3 Assignment Chapter Features -- Reference -- 5 Change Over Time: Burials in an Historic Cemetery -- 5.1 The Phenomenon of Change -- 5.2 The Change Over Time Assignment -- 5.3 Assignment Files and External Resources -- 5.4 Skills Utilized in This Assignment -- 5.5 Assignment Management Techniques and Issues -- 5.6 Atomic Code for This Assignment -- 5.7 Expected Output from Student Work ; 5.8 Assignment Variations -- 5.8.1 For Novice Students (Taking an Introductory Programming Course) -- 5.8.2 For Intermediate Students (Taking a Python Programming Course) -- 5.8.3 For Advanced Students (Taking a Software Engineering or Capstone Course) -- 5.8.4 For Secondary School (Grades 7-12) Students -- 5.8.5 For Digital Humanities Students -- 6 Visualizing Change Over Time: Simple Visualization of the Burials in an Historic Cemetery -- 6.1 A Language of Lines, Colors, and Textures -- 6.2 The Visualizing Change Over Time Assignment -- 6.3 Assignment Files and External Resources -- 6.4 Skills Utilized in This Assignment -- 6.5 Assignment Management Techniques and Issues -- 6.6 Atomic Code for This Assignment -- 6.7 Expected Output from Student Work -- 6.8 Assignment Variations -- 6.8.1 For Novice Students (Taking an Introductory Programming Course) -- 6.8.2 For Intermediate Students (Taking a Python Programming Course) -- 6.8.3 For Advanced Students (Taking a Software Engineering or Capstone Course) -- 6.8.4 For Secondary School Students -- 6.8.5 For Digital Humanities Students -- 7 Textual Analysis: Frequencies and Stop Words in Dirty Text -- 7.1 Writers Make Decisions -- 7.2 The Frequencies and Stop Words Assignment -- 7.3 Assignment Files and External Resources -- 7.4 Skills Utilized in This Assignment -- 7.5 Assignment Management Techniques and Issues -- 7.6 Atomic Code for This Assignment -- 7.7 Expected Output from Student Work -- 7.8 Assignment Variations -- 7.8.1 For Novice Students (Taking an Introductory Programming Course) -- 7.8.2 For Intermediate Students (Taking a Python Programming Course) -- 7.8.3 For Advanced Students (Taking a Software Engineering or Capstone Course) -- 7.8.4 For Secondary School Students -- 7.8.5 For Digital Humanities Students -- References -- 8 Code Transformation: From XML to Stylized HTML ; 8.1 The Magical Aura Around Computers -- 8.2 The Code Transformation Assignment -- 8.3 Assignment Files and External Resources -- 8.4 Skills Utilized in This Assignment -- 8.5 Assignment Management Techniques and Issues -- 8.6 Atomic Code for This Assignment -- 8.7 Expected Output from Student Work -- 8.8 Assignment Variations -- 8.8.1 For Novice Students (Taking an Introductory Programming Course) -- 8.8.2 For Intermediate Students (Taking a Python Programming Course) -- 8.8.3 For Advanced Students (Taking a Software Engineering or Capstone Course) -- 8.8.4 For Secondary School Students -- 8.8.5 For Digital Humanities Students -- References -- 9 Art Stylometry: Recognizing Regional Differences in Great Works of Art -- 9.1 Comparing Features in Artifacts -- 9.2 The Art Stylometry Assignment -- 9.3 Assignment Files and External Resources -- 9.4 Skills Utilized in This Assignment -- 9.5 Assignment Management Techniques and Issues -- 9.6 Atomic Code for This Assignment -- 9.7 Expected Output from Student Work -- 9.8 Assignment Variations -- 9.8.1 For Novice Students (Taking an Introductory Programming Course) -- 9.8.2 For Intermediate Students (Taking a Python Programming Course) -- 9.8.3 For Advanced Students (Taking a Software Engineering or Capstone Course) -- 9.8.4 For Secondary School Students -- 9.8.5 For Digital Humanities Students -- References -- 10 Social Network Analysis: Historic Circles of Friends and Acquaintances -- 10.1 Code Reuse and Python Libraries -- 10.2 The Social Network Analysis Assignment -- 10.3 Assignment Files and External Resources -- 10.4 Skills Utilized in This Assignment -- 10.5 Assignment Management Techniques and Issues -- 10.6 Atomic Code for This Assignment -- 10.7 Expected Output from Student Work -- 10.8 Assignment Variations -- 10.8.1 For Novice Students (Taking an Introductory Programming Course) ; 10.8.2 For Intermediate Students (Taking a Python Programming Course) -- 10.8.3 For Advanced Students (Taking a Software Engineering or Capstone Course) -- 10.8.4 For Secondary School Students -- 10.8.5 For Digital Humanities Students -- Reference -- 11 Conclusion


Tidsskrift

Artiklen er en del af

Artiklerne i  handler ofte om

Artikler med samme emner

Fra


Artikler

Alle registrerede artikler fordelt på udgivelser

...

...

...

...

...