Welcome to the home of Travis Mullen

I'm a software developer, woodworker, and sticker maker. I've spent the last 12 years living and working in Columbia, SC. The last few years I've been working for Bricker and Beam making high-end custom furniture. You can see some of the pieces I made by going to my portfolio or clicking here. Woodworking provides me with a creative outlet that is therapeutic in so many ways.

I came to Columbia for graduate school in 2012. There I studied English with concentrations in Digital Humanities and Book History. Digital Humanities is the application of Computer Science and Data Science methodologies to Humanistic questions. While studying, I also taught a full load of courses and worked for the on-campus software development company The Center for Digital Humanities. During my time at the CDH, I wore many hats including Systems Administrator, Chief Programmer, and Project Manager. As Systems Administrator, I managed 5 RHEL VMs. At the same time, as Chief Programmer, I was expected to jump in to any project and knock out any coding-related issues they were having regardless of language or framework. While performing those duties, I managed teams of 5 programmers for 2 projects. I also consulted on all new projects and acted as mediator between humanities professors and computer science students, ensuring effective communication, accurate and realistic task creation, and mutual understanding of the project’s domains and its technical aspects. Afterward, I translated project descriptions as defined by humanities professors into development plans including the technical infrastructure and requirements, steps necessary, and roughed out plans of attack for my student developers. Finally, while there, and toward the end of my tenure I containerized and redesigned the organization's entire project ecosystem using Docker, Docker Compose and NGINX. I really enjoyed working here, not because I had to learn quickly on the job, but because I got to.

A few of my favorite projects at the CDH include:

The Carlyle Letters Online (Active)
The Carlyle Letters Online houses the repository for the letters of John and Jane Welsh Carlyle. The site uses complex XML files to render data. It's built with Django and uses Python to dynamically translate the XML into rendered pages. It sees over 100,000 hits per day. I refactored the xml translations in this project to improve load times by 80% by reducing the overall number of translations across the entire site.
Paragon (Inactive)
Paragon combines OpenCv, Django, and Celery to compare page images of 16th century books and automatically detect stop-press variants. I refactored its algorithm to increase the speed of comparisons by 50% by first locating text areas on pages, then comparing smaller and smaller subsections (paragraphs, lines, characters).

Much of my graduate study focused on analyzing hundreds of thousands of Renaissance English books that have been digitized by Early English Books Online. I applied a number of data analysis methods but really enjoyed Latent Semantic Analysis, Latent Semantic Mapping, and Latent Derichlet Allocation which are, in some ways, similar. I would use methods like these to attempt to find meaningful patterns across massive corpora so that I could generate social networks of not only people (authors, printers, binders, all the people involved in the 17th century book trade) but also of concepts within the corpora. Generating these networks created new possibilities for understanding the early English book trade. One such interesting thing that I found is that authors tended to use printers whose other printings were conceptually similar to their own. In my article Jane Welsh Carlyle's Social Network and the Lexical Conception of "Home" my co-author and I used LDA topic modelling to solidify the conceptual understanding of Welsh Carlyle’s corpus of letters on a larger scale. The LDA model produced a set of topics that revealed recurring patterns of co-occurring words in the letters. Social Network Analysis (SNA) was then used to graph Welsh Carlyle’s recipients and to connect them with the topics created with LDA. This approach increased the semantic value of the connections among the individuals and topics that form the nodes created by the SNA.

For these projects, I hard-coded the mathematical formulas for all of my methodologies, first in R and, later, in Python. Somewhat recently I have fallen in love with Scala and Functional Programming. I thoroughly enjoy the challenge of writing code functionally and Scala is such a joy to use. I have completed a number of courses on Scala from Rock the JVM including, recently, building a complete web application using Scala and the Typelevel stack. I have some more Scala web projects in the works as I think it's not only a viable option for full-stack web development, it's a great one.

Contact Me

account_circle
mail
Jobs Board

I developed this project in the Typelevel Rite of Passage project-based course on Rock The JVM. It's a full-fledged web application written in Scala with the Typelevel stack. It features user authentication and the ability to post jobs (which the user pays for via stripe integration) with images and rendered markdown descriptions.

This project was really fun and convinced me that Scala is a great language for full-stack development. It's deployed to a subdomain on this website using docker (with compose) containers and nginx (as is this website).

IMG_1235.JPG
IMG_1236.JPG
IMG_1237.JPG
IMG_1238.JPG
IMG_1639.JPG
IMG_1782.JPG
IMG_2203.jpg
IMG_3347.jpg
IMG_8131.jpg
download