Chris Doody and Melissa Dalgleish were among the six EMiC people (the others were Dean Irvine, Alan Stanley, Vanessa Lent, and Lee Skallerup Bessette) to attend the inaugural year of the Digital Humanities Winter Institute, held at the University of Maryland last week. They all had a great time and wished you were there, although they definitely got more sleep than they do at DHSI because you weren’t. Melissa and Chris wrote a brief introduction to their course at the end of last week, which you can find below.
MD: Chris and I enrolled in Humanities Programming at the inaugurual DHWI, which is wrapping up later today. I enrolled in the course in the hope that learning more about the programming side of digital humanities would be a useful complement to the learning I’ve already done about coding and theory at the DHSI and TEMiC. I’ve been working on learning Ruby since DHSI, but learning a new language on your own is difficult, and I was excited to have some hands-on (and hand-held) time with people who knew it well. And if nothing else, I was hoping that I would learn enough about programming to be able to talk to programmers without sounding like I knew nothing about what they do.
CD: We spent the week learning a variety of programming tools and functions, while working on a building a website, featuring a basic database. I was a little anxious about taking this course, as my only programming knowledge before I started this course was VERY basic html and css. Thankfully, the class was taught by two great teachers–Wayne Graham & Jeremy Boggs (Scholars’ Lab)–who took time to walk through all the steps slowly, explaining as they went, and ensuring that everyone was on the same page. Although I cannot say that I understood every single command that I was entering, I was able to follow the logic of the process as a whole.
MD: Wayne and Jeremy were smart to start with the basics: we spent Monday playing around with HTML and CSS, and as most people are pretty familiar with those, no one left on Monday feeling like their brains were broken. Or at least I didn’t. It helped that we spent at least an hour coming up with excessively (and hilariously) complicated ways to sort out the ordering of lunch. Tuesday was a different story–command line programming was extremely useful, and not too complicated, but once Ruby showed up, things got hard fast. Learning a new programming language is so similar to learning a new spoken language–not only is there a new syntax and grammar to learn, but a huge new vocabulary. And just like my proficiency in picking up new French has significantly diminished as I’ve gotten older, picking up Ruby is neither intuitive nor simple. We took a lot of breaks on Tuesday, because all of us needed a significant amount of time just to process.
CD: So what did we actually do? We started by learning basic Ruby programming vocabulary. After a few hours, we were able to get our computers to say “Hello” to us. After learning these basic functions, we began learning Rails. Our goal was to create a voting system out of a database. We installed some pre-built code into Rails that provided the basic outline of the database, after which we changed the code and CSS to personalize the appearance and function of the database. We were working both locally on our own systems, and then we pushed the website to the “cloud” by hosting the code on Heroku. We were also consistently backing up our code to the online code repository GitHub. Through this simple project, we were able to learn the basics of a large number of tools.
MD: By the end of the week–today–we’d actually made something both useful and nice looking. I’m pretty darn good at keeping the flows of code going between my computer, GitHub (where it’s saved), and Heroku (where it’s hosted and displayed). I’ve gotten a great schooling in best practice in terms of code curation and code sharing. I figured out some basic problems on my own, and I got to have some fun with design. My CSS is getting better all the time, and translating my vision of what a site could look like into code is pure pleasure (when I don’t do it wrong and screw things up). But perhaps most importantly, I’ve gained confidence. Programming isn’t something I need or want to do every day, at least not in my current digital humanities work, but I know that if I needed to do more, I could. It’s more likely that I’ll be called upon to translate my vision of something into terms that someone else doing the programming can act upon, and I’ve got more vocabulary and more knowledge to do that now. And on days when I’m looking for something to do during my downtime, Rails for Zombies is much more fun (and much less frustrating) than it was when I first started playing with it.
CD: In the future, this course would work well for anyone planning on taking the “Text Encoding Fundamentals and their Application” course at DHSI. The introduction to these basic programming functions would lend well to the jargon and formatting that will be learned at the TEI course.
If you want to check out what we were working on this week, you can find our sites here:
You must be logged in to post a comment.