Skip to content

Instantly share code, notes, and snippets.

Shawn Graham shawngraham

Block or report user

Report or block shawngraham

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@shawngraham
shawngraham / .block
Last active Apr 28, 2018
A Citation Graph for a Google Scholar Search
View .block
license:
height: 600
@shawngraham
shawngraham / muhlenberg-faculty.md
Last active Apr 17, 2018
Muhlenberg College chat with faculty
View muhlenberg-faculty.md

Warts and All - A Conversation About Research and Engagement in the Classroom and Online

or bait and switch:

actually, I'm talking about productive failure in my research and teaching and how that plays out in my classroom

Part One

  • I am in fact an imposter. Who else but an imposter would have these kinds of fails on his record?
    • the Scripto Fiasco
    • the Wikiblitz Debacle
    • the HeritageCrowd Affair
    • the Parable of the Welders
@shawngraham
shawngraham / muhlenberg-faculty.md
Created Apr 17, 2018
Muhlenberg College chat with faculty
View muhlenberg-faculty.md

Warts and All - A Conversation About Research and Engagement in the Classroom and Online

or bait and switch:

actually, I'm talking about productive failure in my research and teaching and how that plays out in my classroom

Part One

  • I am in fact an imposter. Who else but an imposter would have these kinds of fails on his record?
    • the Scripto Fiasco
    • the Wikiblitz Debacle
    • the HeritageCrowd Affair
    • the Parable of the Welders
View batch-ocr.r
library("tesseract")
library("magick")
library("magrittr")
# load 'em up
dest <- "/path/to/images"
myfiles <- list.files(path = dest, pattern = "jpg", full.names = TRUE)
# improve the images
# ocr 'em
View twison.js
window.storyFormat({
"name": "Twison",
"version": "0.0.1",
"author": "Mike Lazer-Walker",
"description": "Export your Twine 2 story as a JSON document",
"proofing": false,
"source": "<html>\r\n\t<head>\r\n\t\t<title>{{STORY_NAME}}</title>\r\n\t\t<script type=\"text/javascript\">\r\n/**\r\n * Twison - Twine 2 JSON Export Story Format\r\n * \r\n * Copyright (c) 2015 Mike Walker\r\n * https://lazerwalker.com\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and\r\n * associated documentation files (the \"Software\"), to deal in the Software without restriction,\r\n * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,\r\n * subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all copies or substantial\r\n * portions of t
View memo-to-self-hist3812-module3.md

so i need the 'how to get shuttle radar data' thing into grey scale

then how to get that stuff into unity https://medium.com/@nickfourtimes/using-gimp-heightmaps-in-unity-16160e28ce22

resize the canvas

when you export, you'll have to use finder to rename extension to .raw

in unity - game object - 3d object - terrain - then in the inspector hit the gear wheel then you can import. important to have the x, y, z as in the image. you can change the x and z, this'll make the landscape bigger. leave y alone. make sure the import values are what you originally resized.

View abstract-for-cu-dh-volume.md

In some varieties of the digital humanities, the idea of 'deformance' has gained some traction as a way of making meaning. The way things break is interesting. Consider learning how to code: type something wrong, and the screen fills with error messages. Parse those errors correctly, and you learn much. Conversely, do things correct the first time, and you are rewarded with another blinking cursor. Nothing much appears to happen. Breaking things is where learning happens. But there is also a third, more liminal space between something that is broken, and something that works. You could call it GlitchSpace, or that zone where things break in weird yet still quasi-functioning ways.

In this piece I consider ways in which the exploration of GlitchSpace can transform not just our teaching but also our relationship with the digital. Glitching - to seek out or make glitches deliberately - reintroduces 'resistance in the material' and thus returns the humanity to DH.

View install vsfm on dhbox?
photogrammetry vsfm for dhbox
1. sudo apt-get install libgtk2.0-dev
2. mkdir vsfm. cd vsfm
3. ```wget http://ccwu.me/vsfm/download/VisualSFM_linux_64bit.zip``` <- an important step! get the right version
4. unzip VisualSFM_linux_64bit.zip.
5. you now have a another vsfm subfolder. cd vsfm
we now need to add a repository to our sources list
6. cd /etc/apt/
View twison.js
window.storyFormat({
"name": "Twison",
"version": "0.0.1",
"author": "Mike Lazer-Walker",
"description": "Export your Twine 2 story as a JSON document",
"proofing": false,
"source": "<html>\r\n\t<head>\r\n\t\t<title>{{STORY_NAME}}</title>\r\n\t\t<script type=\"text/javascript\">\r\n/**\r\n * Twison - Twine 2 JSON Export Story Format\r\n * \r\n * Copyright (c) 2015 Mike Walker\r\n * https://lazerwalker.com\r\n *\r\n * Permission is hereby granted, free of charge, to any person obtaining a copy of this software and\r\n * associated documentation files (the \"Software\"), to deal in the Software without restriction,\r\n * including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,\r\n * and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so,\r\n * subject to the following conditions:\r\n *\r\n * The above copyright notice and this permission notice shall be included in all copies or substantial\r\n * portions of t
@shawngraham
shawngraham / historygen.py
Last active Dec 9, 2017
A History Generator; Also Does Timelines!
View historygen.py
#!/usr/bin/env python
# source: https://gamedev.stackexchange.com/questions/23659/is-there-a-way-to-procedurally-generate-the-history-of-a-world
# to create a visualisation, run like this:
# ./historygen.py --dot | dot -Tpng > filename.png
# brew install graphviz to get the dot files rendering
# to have the story, run like this:
# ./historygen.py
# have your state names in the names.txt file
# now, all of this *could* be done with tracery i suppose, but you can see the bones of the
# history system could be expanded to model other aspects, keep track of things, calculate new things.
You can’t perform that action at this time.