An ‘Inline’ bib. file using filecontents

In this post, I will explain how you can use the filecontents package to create an ‘inline’ .bib file inside your main document.tex . This can, for example, be useful if your LaTeX gets compiled on a server and your method only allows you to pass one single document. If you wanted to pass a .bib file with it, this wouldn’t work out. Also, for LaTeX releases past fall 2019, the package is no longer required for this functionality, you can use it directly as an environment. I’ll still keep this the way I wrote it. See the documentation here. Premlinaries: How I ended up writing this That’s what I initially wrote this little method for: Our publication system archives data following the single source principle: This means that all representations you want, such as a web site or an output PDF, will be generated from one single document. In our content management system, my data are encoded in TEI

read more An ‘Inline’ bib. file using filecontents

What are ‘real’ Digital Humanities and how to get started?

The title suggests a political discussion, however, this is not what I want to discuss here. (However, I had a ‘more political’ discussion planned for a while.) At a recent conference, I realized many people from the Humanities find it difficult to grasp what the DH even really are – because they are so diverse. I was told a colleague had gone to a short DH summer school but still feels like she doesn’t get what the DH really are. Or that she hasn’t learned any ‘real DH’. How does this happen? How can we make it better? Maybe, as a first step, by trying to answer what the DH are in a way which is easy to grasp for someone who isn’t already part of the DH: It is really an umbrella term for a wide range of topics ranging from digital edition to long-term archiving, digitizing facsimile scans of books or running analyses. I don’t promise to unveil

read more What are ‘real’ Digital Humanities and how to get started?

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’

The LaTeX Ninja: Topics and the pseudonym

Since starting this blog about a year ago, I am at a point where I think my choice of typical topics is more or less stable. I also have used the WordPress “categories” to add many of these topics and also hope to develop some of them into some sort of series. What these ‘series’ are for, is explained in the category descriptions now. The Ninja: A pseudonym Also, I wanted to quickly address another thing: My pseudonym. I have already talked about why I started this blog multiple times before. There is a basic mission statement in the about section. Long story short, the ‘LaTeX Ninja’ was a goal, not a label I put on myself. It doesn’t describe ultimate LaTeX wisdom (for that, I have sometimes used the term ‘LaTeX Guru’). If the LaTeX journey you can join on this blog were a computer game, you you start out as a ‘LaTeX Noob’. As you gain experience, you

read more The LaTeX Ninja: Topics and the pseudonym

Algorithms, Variables, Debugging? Intro to Programming Concepts

Since I am about to prepare a workshop on natural language processing and a pre-workshop-workshop where I need to quickly/crashcourse introduce my (non-digital) Classicist friends to some basics on programming, let me share a list of programming concepts I compiled with you. I would be happy for your suggestions and comments regarding mistakes. I will probably publish this together with some key concepts of quantitative text analysis (blogpost to come) on a cheatsheet or as slides for you later 😉 Intro to key concepts of programming This list of concepts is not super-structured and meant to work as a ‘reference tool’ as well as a text to be read, so I tried to give it a more or less useful ‘chronology’, meaning that later parts kind of build on earlier ones. I start off with what a computer program or algorithm actually is and how we translate between source code (the code we write) and the code which gets fed

read more Algorithms, Variables, Debugging? Intro to Programming Concepts

Three typical conflicts between DH and ‘Normal Humanities’

In this post, I wanted to name the three most important sources of conflict between DH and non-DH people, according to me. There would probably be many more things one could mention, but I wanted to discuss those three to show one thing: The first one is (almost) completely avoidable and the second and third ones nicely show the contradictory nature of thoughts which cause conflicts between Digital and ‘Normal’ Humanists. Disclaimer: Since they are written up by someone in the DH, it could sound to you like I’m saying it’s the NH’s (Normal Humanist’s) fault but that’s not at all what I’m trying to say. (Remember I feel like I’m half-NH myself anyway. And see the Epigrammetry discussion of the D and the H.) I’m just starting from the arguments I get thrown at me (thus from the Normal Humanists’ perspective) and respond why I think they’re not universally valid (DH perspective). However, it would work just the same

read more Three typical conflicts between DH and ‘Normal Humanities’