The Blog of Charles Daniels

My Talks

GraphViz is a powerful language for describing graphs. Tools are available to convert GraphViz markup into visual diagrams, including features such as automatic node layout and advanced styling capabilities. This talk discusses the basics of GraphViz, useful strategies and techniques for using GraphViz, and concludes with a selection of practical examples.

This walk was originally written to fulfill the graduate credit requirement for the University of South Carolina CSCE567 "Visualization Tools" course.

The slides for this talk were created using sent. You may also view the slide deck (slides) as a normal text file.

All demonstrations and other resources may be downloaded here.

Times and locations where I have given this talk:

Date Location Organization / Event
2019-04-08 University of South Carolina CSCE567 Class Meeting

Awk is a simple programming language for manipulating streams of text. It is very versatile and useful for tasks such as searching or processing text, interacting with tabular data (such as CSV, TSV), and rapidly prototyping algorithms or ideas. Awk has been a mainstay UNIX tool for decades due to its simplicity and speed. In this talk, I introduce the basic principles and usage of Awk, show some common idiomatic examples of usage in depth, and discuss and demonstrate more advanced usage in brief.

The slides for this talk were created using sent. You may also view the slide deck (awkward) as a normal text file.

All demonstrations and other resources may be downloaded here.

Times and locations where I have given this talk:

Date Location Organization / Event
2019-03-20 University of South Carolina UofSC ACM Student Chapter - Weekly Meeting

An introduction to building simple GUIs in Python 3 using TkInter. TkInter + Python 3 allows for straightforward, rapid, cross-platform GUI development. This talk assumes a basic understanding of programming, and a working knowledge of Python would also be helpful but is not required.

This talk takes the from of a live-coding exercise where the speaker will build a simple "sound effects board" using Python 3 and TkInter.

This talk was originally written for the 2019-01-30 meeting of the University of South Carolina ACM Student Chapter.

Times and locations where I have given this talk:

Date Location Organization / Event
2019-01-30 University of South Carolina UofSC ACM Student Chapter - Weekly Meeting

An introduction to various shell scripting related topics. The audience is assumed to have basic familiarity with UNIX shells (or PowerShell) such as ls, cd, cat, etc.

This talk was originally written for the 2018-11-07 meeting of the University of South Carolina ACM Student Chapter.

Last Updated: 2018-11-07

Times and locations where I have given this talk:

Date Location Organization / Event
2018-11-07 University of South Carolina UofSC ACM Student Chapter - Weekly Meeting

An introduction to various intermediate and advanced SSH topics suitable for audiences with an existing general familiarity with SSH. Topics covered include key generation and management, file transfer, X forwarding, SOCKS proxies, SSH relays, reverse-SSH tunnels, and SSH server configuration best practices.

This talk was originally written for the 2018-04-06 meeting of the University of South Carolina Cybersecurity Club.

Last Updated: 2018-04-06

Times and locations where I have given this talk:

Date Location Organization / Event
2018-04-06 University of South Carolina UofSC Cybersecurity Club - Weekly Meeting
2018-11-28 University of South Carolina UofSC ACM Student Chapter - Weekly Meeting