Easy and quick strategies to #scicomm your DH project

Your digital project is great, I’m sure of that – but does it even exist if nobody knows about it? Science communication is the answer to avoid this philosophical dilemma. In this short post, I wanted to share a list of quick-and-easy-to-implement ideas to add some science communication to your projects. This is just a short post to give you some ideas, not tutorials on how to do it. However, I am open to any tutorial requests you might have on the topics involved. As for the Twitter bot, there is a short post available already. So let’s get to it! Quick and easy strategies to #scicomm your DH project Create a better / thematic / facetted search interface. Maybe people aren’t using your data because the interface is not intuitive and they can’t find things or don’t know what to look for and where to look. This is the basic building block to build all the following things on.

read more Easy and quick strategies to #scicomm your DH project

Create your Tweepy/AWS-powered Twitter bot in a day

This post wants to convince you to try out creating a Twitter bot using Python Tweepy and AmazonAWS Lambda because it’s easy and fun. Of course, you can use any other utilities but Tweepy and AWS Lambda are the ones I tried. This is not a full tutorial but I can make one if anyone is interested. Inspired by the #100DaysofDH challenge In this post, I will just give you some basic Twitter knowledge, links for what you need to know to get it done and a link to the github of my #100DaysofDH challenge for which I implemented such a bot. If you want more guidance, please let me know. Also, read the post on the challenge because I noted down some restrictions I realized the Twitter automation guidelines impose on bots as I went along. In my example, I think I’m in fact doing one or two things which you actually shouldn’t do (I think bots shouldn’t like

read more Create your Tweepy/AWS-powered Twitter bot in a day

Learning to program: How to master a programming language fast

I’ll write a summary about my experiences at this weekend’s TeXUsersGroup conference (#TUG2020) soon but today I wanted to share this post I had already prepared and scheduled: about ways to accelerate mastering a programming language. Of course, I can’t guarantee this will work for you and ‘fast’ is always relative. You can do a fast 3-day-binge but not really have mastered the language (obviously). Fast in terms of actual programming language mastery could mean a year or two, depending on your previous knowledge with programming. But enough of the disclaimers, let’s get to it! Learn as you go My first tip is to learn as you go, that means on the one hand that you jump into it without expecting from yourself to acquire all possible theoretical knowledge first. This ensures you get practice fast. It will let you use the language rightaway and only learn things you’ll actually use. That’s how I suggest you start using Linux by

read more Learning to program: How to master a programming language fast

Does LaTeX count as “programming”?

Today I wanted to talk about a common question I come across: Does LaTeX count as programming? Many people dismiss this question directly with a no. But I say the answer is not that simple and depending on how you practice LaTeX can definitely be ‘yes’ much more than you might think! Also, something I really don’t appreciate is people meaning to  degrade LaTeX when saying using LaTeX has nothing to do with programming (because it does and most people who think that way have just never seen LaTeX being used more like programming). LaTeX is, strictly speaking, a programming language and Turing-complete. Or rather, LaTeX is a macro package for TeX which is the actual Turing complete programming language. The typesetting-specific tools LaTeX provides probably can’t, however, be considered a full programming language on their own anymore. You could theoretically do anything with it, though it might just not be the easiest possible way to accomplish your ends (unless

read more Does LaTeX count as “programming”?

Learning to program: Failing fast and error messages

Today I wanted to talk about error messages and why you should learn to love them. If your mission is to learn programming, they show you your weakness and tackling a weakness is always the fastest way to learn. This is why the whole discussion of fixing error messages quickly turns into a philosophical discussion of a way of life: Walking the  path of the Ninja requires you to fail fast, early on, and often. Let me tell you why… Should you care about error messages and warnings? Are they secret messages from the universe? Yes, they are. If you’ve never given a hoot about errors and warnings in your life, congratulations. I don’t either. That is, until the thing doesn’t compile anymore. I am at awe with respect for people who fix mistakes before they become a problem. But I’m not one of them. What does this mean, however, with regard to your attitude towards failure? It probably means

read more Learning to program: Failing fast and error messages

Looking at data with the eyes of a Humanist: How to apply digital skills to your Humanities research questions

In my recent post on how to get started doing DH, I basically said that the essence of being DH is looking at data with the eyes of a Humanist and gave some tips on how to get started in just 10 days. However, it’s not that easy. Learning digital skills and the problem of skill transfer A problem I see a lot is that H people fail to transfer their newly won practical DH skills to their own research questions. They don’t know how to look at their own material as data. They don’t know how to leverage digital methods to help answer their own research questions. But if it isn’t compatible with their own research, they’ll never deepen their knowledge enough to actually profit from their DH skills. If you don’t use them, they are forgotten quickly. So how do you make this transfer which I think is, so far, being neglected as a skill which has to

read more Looking at data with the eyes of a Humanist: How to apply digital skills to your Humanities research questions

Learning Programming from Video Tutorials

In these times of corona crisis, I have been receiving many offers for online programming tutorials in my inbox, so I wanted to give my views on one type in particular, that is learning from videos. I’ll share what I think are pros of learning programming watching videos, as opposed to, for example, text-based tutorials like blog entries or books, or also in-person trainings. Pro: Learning by imitation or watching someone else do it at first is a natural way to learn Using video tutorials, you don’t need to run the code yourself to see its results, which is fair, I think, when just quickly going through a tutorial or you’re at the very beginning of your programming journey where even installing a new software might still seem daunting. Generally, you should experiment for yourself and try to tweak example programs but at the same time, you don’t need to overdo it for something you just quickly want to look

read more Learning Programming from Video Tutorials

Formulating Research Questions For Using DH Methods

In the feedback forms I did on the DH classes I have taught over the last years, I got one feedback I didn’t expect: People were extremely grateful I had practiced with them how to formulate valid research questions which, apparently, no one had ever (really) done with them before. I found that quite astonishing because the DH are all about methods and methods are like specizalized tools. You need to know what you can use them for. So here’s the crashcourse. The Hammer and the Nail I want to start off with an analogy. A hammer is a specialized but not an extremely specialized tool. You can use it for a range of tasks, however, not all tasks are going to work equally well. Some might work but would actually require a more specialized tool if you had one. You can really use the hammer on about anything and almost always, something is going to happen. For example, you

read more Formulating Research Questions For Using DH Methods

A Book Review of ‘Ultralearning’

Today, I wanted to share a little book review: Scott Young, Ultralearning: Master Hard Skills, Outsmart the Competition, and Accelerate Your Career, Harper Business 2019. (Book website) It won’t be an exhaustive review, but mostly about my one key insight and some reflection on it. If you want a summary, there are countless ones readily available out there already. The following quote sums up the spirit (and main claims) of the book quite well, but it’s really a book packed with solid methods, not just promises: Is it really possible to get an MIT-level education without attending MIT? Or to learn a new language to the point of becoming fluent and conversant in just three months? Or to develop your own video game from scratch and make it a commercial success without being a professional game developer working for a big studio? (source) Apart from the fact that the whole philosophy of ‘Ultralearning’ can be seen as somewhat problematic (see

read more A Book Review of ‘Ultralearning’

Learning to program: What to do if the program doesn’t compile

In this new year, I wanted to make an introduction to programming which mentions all the parts which (albeit being quite essential) many of the other tutorials, books and teaching documents tend to leave out. Things like “How do I even start debugging?” or “How to not lose it if my program doesn’t compile or when nothing works anymore?”. I was fortunate to get taught these skills by friends and helpful colleagues but if you’re a remote-only learner and don’t have access to such people – this series is for you. In this first post, I’ll address the problem that you’re in a situation where your program does not work at all. In the case of LaTeX, this means it won’t compile. Other programming languages which are not compiled will just not run. So what do you do in that dire situation? Step 1: Take a deep breath Stay calm. I repeat, stay calm. Take a deep breath. It’s just

read more Learning to program: What to do if the program doesn’t compile

Strategically Using Search-And-Replace for LaTeX documents. Part I

In an earlier post, we talked about the perks of using search and replace wisely on XML documents. Here I want to argue that search and replace might be even more powerful when used in LaTeX.   The power of search and replace Imagine your thesis advisor decides last minute that they don’t like the way images are typeset in your thesis. It happens. We are speaking from our friend the Noob’s experience here. So imagine your advisor decides the images in your archaeological catalogue are too small, at the very last minute. In Microsoft Word, problem No. 1 you would have already encountered before now is that the document probably wouldn’t even open anymore (what with 200 pages full of images etc.). The second problem would be that you’d have to change each image size by hand, clicking and dragging around, cleaning up after the horrible mess and destruction your changes are leaving behind. In LaTeX, thanks goodness we

read more Strategically Using Search-And-Replace for LaTeX documents. Part I

Tracking your progress to make New Year’s Resolutions stick

Many people make New Year’s resolutions. Whether they are to lose weight, exercise more or learn a new skill, they often fail. In this post I want to show what pitfalls can be and suggest some good ways of making resolutions stick. Problem: Not having clear actionable goals If you’re not following through on your goals, that might simply be due to a lack of clarity about what they are. For example, “Learn X” is a bad goal because it doesn’t state what exactly you’ll do to learn X, which methods you use, how long you’ll practice or when and where. Swap unclear goals like these with something very concrete and plan when you’ll do it. Is it supposed to become a habit part of your pre-existing daily routine (recommened) or do you see it like an appointment? Then put it in your calender (on auto-repeat so it gets scheduled every week). (You can read some more about this here.)

read more Tracking your progress to make New Year’s Resolutions stick

Understanding Scalability and Relative Values

What is the difference between 12pt and “format as heading“? Between 50px or 0.5\textwidth? Most of us know that we should always prefer relative to absolute values. But many who are new to webdesign or LaTeX don’t really get why. All of us who typeset papers and conference proceedings know that years of using MS Word does not necessarily teach you that difference either. This short post will try to remedy this in a quick and painless way 😉 In a WYSIWYG texteditor: Fontsize 12pt or “Format as Heading” In the case of a text editor, it is advisable to use the format templates rather than manually changing headings and so on for simple reasons: The information is stored as markup and if we tell the program what we want formatted as a heading, the machine gets semantic information about the text. Most people will understand that something is meant to be a heading when the font size is manually

read more Understanding Scalability and Relative Values

Learning from ‘Computer Books’

I just uncovered this book review on William E. Shotts Jr., The Linux Command Line: A Complete Introduction (No Starch Press 2012) I left as a half-done draft months ago. In it, I found a long collection of thoughts on learning programming from books and what common problems are. The book review will still follow at some point, but these are some of the examples of common problems with ‘computer books’. The typical computer book: a long detail-rich, reference-like read I like the Intro to the Linux commandline a lot, but also found that it was very long in pages but the content isn’t super dense. So it was a very long read and I’m always ambivalent about books which are reference-like and super-long. I am a person who likes to read and even I put off reading this book for a long time. I read a chapter every morning while having breakfast. Some chapters I just skimmed because they didn’t contain

read more Learning from ‘Computer Books’