Blog Post

The black box

The black box

Even as one that identifies himself as a Digital Humanist, I often find it hard to accept using “out of the box” software for my own academic work. This is not because I am afraid or opposed to software in my own work, it is because I often cannot fully comprehend what goes on in that piece of software. I come from the more Hack less Yack school of DH, but even I have trouble understanding these large pieces of software of the web that could be used for some amazing Digital Humanities projects.

What do I mean exactly? Let’s take a piece of web based software that using Javascript is able to manipulate images, called Cropper ( Looking at the JS file in this piece of software, it spans over five thousand lines and involves hundreds of variables. Even tracing a single variable through the code requires some expert knowledge. With all my knowledge of programming and JS, I cannot understand why the jpeg is reformatted when it is placed in the canvas. While that might not matter to someone looking for a quick and easy way to crop an image, it matters to me. If I want to see if multiple versions of a painting change over time, like if an object in the painting moves to the right in subsequent versions, this particular piece of software would not allow me to see this type of information because it does not retain the original qualities of the jpeg.

So what can I do? I could write my own piece of software that would take all of these considerations in mind, but I doubt that would that be fruitful endeavor. First, it would take me an extremely long time to construct without utilizing a developer. I could use a developer, but that could be an expensive endeavor. Secondly, I doubt that it would be recognized as an academic endeavor (even though it is!) because we do not have models to evaluate software as scholarship in the humanities realm. It is my belief that the term collaboration needs to be expanded, that we should see more papers coauthored by computer scientists and humanists.  I am guilty of adopting the traditional humanities way of doing scholarship, so I am trying to spend more time in the CS department, attempting to open up conversation and to collaborate cross disciplinary. . Hopefully others are having this same type of trouble with utilizing software they don’t entirely understand.



This is an interesting topic because in the humanities fields it is not so common to collobrate with others, but to create a computer program made up of a lot of lines of code it is very likely that you are working with a team. It is definitely worthwhile for humanists to consider whether working as a solitary scholar is how we should continue to research and innovate. As we do more digital work we will have to think about new ways to assess output and how developing digital tools factor into what "counts" as scholarship.

As for what you are going through -- it is certainly noble to try to develop all of your own tools, but I think in many cases you can use what is already out there and try your best to understand the underlying logic behind it, even if you don't identify all the variables. Keep coding!


I think that an enagement with the tools that are "out of the box" is an extremely fruitful area. Maybe my focus should shift from making tools into attempting to engage and problematize already made software! Thanks!



I am having a problem that is similar but not entirely the same -- between my different projects, I will often need to treat the same piece of software as a black box... or need to get under the hood and look through those 5000+ lines of code, which I don't really have the background to understand. I'm working on that, taking classes in the CS department at my school even as that's not my "home" department. (That's math, though my research projects tend to find a home in the interdisciplinary area that is Disability Studies.)

I'd be interested to read how your projects go, between CS and humanities.


I wonder what it would look like if we truly collaborated with Computer Scientists on a project, with a discussion on what those 5000 lines of code actually do. Would the comlications that a Humanitst bring to the table be too much for the computer scientists? Would there need to be much more funding in order to see a project like this through? I would love to see and I look to spend some more time in developing a grant application for a project like this.


That'd be really cool, I think, and it'd depend on the computer scientist in question -- you'd definitely need one with some interdisciplinary inclinations! In terms of funding... well, it'd take longer! I think that layperson-readable code comments would have some similarity to what you're looking for, though it'd not be quite the same thing.