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

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

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’

Is learning how to program like learning a foreign language?

Is learning how to program like learning a foreign language? Well, it’s a definite “yes and no” from me. I think many people oversimplify this. And then they say that their programmer friends think the same way to ‘prove the point’. Mostly I bite back the question of how many ‘real languages’ the programmer friends have learned or even learned to a native-like level. Because I think that there are some quite important differences. Since I just read this brilliant article The Ancient Case Against Programming “Languages” by Patrick J. Burns on Eidolon (Apr 24, 2017), I thought I could contribute some of my thoughts on the topic as well. They stem less from the interest in not losing funding for second language education, but rather from some of my own experiences in “second language programming education” or whatever one might call it – the act of learning programming (in your 20ies at earliest) after having learned multiple natural languages as

read more Is learning how to program like learning a foreign language?

A systematic training progression for programming?

As some of you might know, I am currently a fellow, aka at my personal writing retreat at Wolfenbüttel. And I decided to combine this with some sort of a training camp for my bouldering progress because you do need to have some breaks from writing during the day anyway and I can’t always watch Bones or create CV templates. You might have been following some of my bouldering on epigrammetry, the blog, or epigrammetry, the Twitter.   Training progressions in sports Also very few of you might know as well, I used to train a lot for long-distance running (10k) during my teens. So I know what training progressions are. I used to have detailled training plans, eating regimes, supplements to take and all that jazz. I stopped at some point because my immune system kept bullshitting me and as an ambitious person, I couldn’t take the idea of having to start from scratch after a half-year of being

read more A systematic training progression for programming?

Don’t call it a database!

When I started this blog, one of my promises and goals, apart from LaTeX-Ninja’ing, was to demystify the Digital Humanities for non-DH people. For a long time I have watched and I think one of the big mysteries of the DH still persists in Normal Humanists’ heads and thus, really needs demystifying. You might have guessed it, I want to explain why DH people will cringe if you call digital resources ‘databases’ which are not, technically speaking, databases. Is it ok to call any digital resource / corpus a ‘database’? We know, that’s what you tend to call a digital corpus. But in most cases it’s not correct, it’s a pars pro toto. A database is just one possible technical implementation, but the term is used more broadly for any ‘digital base of data’. By laypeople, at least. A pars pro toto stylistic device is a Humanities’ thing, right? You do get stilistic devices. So you can also understand why

read more Don’t call it a database!

Your 24 hours. Time management or How to get to know yourself while organizing your life. Part II

Today, I am yet again happy to present the second part of the latest LaTeX Noob guest post:   Last time, I told you about four important steps to organizing your life. They were: Know your priorities. Learn to say “no”. Leave your comfort zone. Never back down. If you want to re-read the last post, you can find it here! So, time management. You will need a calendar, let’s start with that. Take your phone, open your Google calendar. Start. It is actually that easy. You have to know the most important basics. When do I work, what are my main working hours? Do I like a silent or slightly more lively environment for my work? Am I a morning person or a night owl? When will I need a break, when do I want to go to sleep? When am I meeting my friends, when do I spend time with my partner or my family? What do I

read more Your 24 hours. Time management or How to get to know yourself while organizing your life. Part II

Riding higher waves

At the risk of boring you all with my frequent thoughts on better teaching, I wanted to give you another metaphor on good teaching, inspired by a surfing class I took. To sum it all up, surfing was great fun. But this year, I was a bit unfortunate to get teachers who were a lot worse than the ones I’d had previously. The high waves and the shallow water make for good metaphors for the basics and the advanced topcis I frequently drone on about in my philosophy of teaching well. So, there you go. The shallows and the high waves The teachers were over-protective of us in the shallow waters. They helped more than we would have needed help and thereby, didn’t teach us to act independently. I wanted to do so, but it was not encouraged and we weren’t given any instructions on how to catch a wave on our own. They wouldn’t even let us paddle onto

read more Riding higher waves

Improve Your Teaching – 10 Simple Tricks

As you might know, good teaching is important to me, so I wanted to share ten simple tricks which I think can improve your teaching. Most of them are about making sure people get the basics which, in my opinion, is one of the biggest mistakes people make in teaching. Let’s get straight at it. 1) Make sure the preliminaries are clear before starting an explanation. If they are not, don’t even bother starting on the explanation, it will be a complete waste of time. Even if this means that you will spend the whole lesson bringing them up-to-date with the preliminaries and you won’t be able to start on the actual topic at all. Make time for this prep work or risk that all of your subsequent explanations will not get through. To find out if the preliminaries and basics are not clear, you might have to plan testing your students regularly (at the start of each block), like

read more Improve Your Teaching – 10 Simple Tricks

Floating minipages and other wizardry

Inspired by a current issue from my friend the LaTeX Noob, I wanted to give a short explanation on how you can combine floats (i.e. figures) and minipages. Why should you care? Well, if you need tikzpicture or images placed besides eachother or beside text. So most people will probably need this at some point 😉 A great resource is the WikiBook, as always. If you want the lengthy account – that’s the way to go. For everybody else, an explanation of my own. Floats and non-floating boxes What are floats? Some fundamental explanations first: A figure is a float. A minipage is not a float but a box which sits at its fixed place. These are two fundamentally different things. When you combine them in a bad way, LaTeX might get fed up at this. So when planning your minipaging or floating situation, ask yourself which effects are really important to you and which aren’t. Do I even need

read more Floating minipages and other wizardry