Welcome to the TeXtalk! We have a very special guest for today’s interview: our friend Nicola Talbot, 3k+ rep, 20+ badges, 55+ answers, package writer, and author of a great series of TeXnical books! Get ready for this awesome interview!
- Paulo Cereda
- Dear friends, welcome to the TeXtalk! Our interviewee today is Nicola Talbot!
:)
Could you tell us a bit about yourself?
:)
- Nicola Talbot
- I have a BSc in Maths and a PhD in electronic engineering and a diploma in creative writing. I’m also a computer programmer and have done contract research work, but I’m now an independent writer/publisher.
I’m also an honorary lecturer at the University of East Anglia (UEA).
And have written some LaTeX class files and packages on CTAN.
- Paulo
- Any hobbies, besides of course TeXing?
:)
- Nicola
- Reading. (Raymond Chandler, Dashiell Hammett and Tolkien mostly.)
- user4035
- What are your lectures about? Math or Electrical engineering?
- Nicola
- I rarely lecture. “Honorary lecturer” is a bit of a misnomer. I do some machine learning research work and the occasional LaTeX tutorials and write class files for exams and problem sheets.
- Paulo
- How was your first contact to TeX, LaTeX and friends?
- Nicola
- So long ago, I’m not sure I can remember!
:-)
It was back when I was a student. I used to use a very primitive word processor on an Acorn Electron (cassette tape storage originally then I moved up-market and bought an external floppy drive!) I moved to an Acorn Archimedes installed ArmTeX and started using LaTeX to write stories and my PhD thesis.(That was LaTeX2.09 back then.)
- Charles Stewart
- You are a production editor at Microtome Publishing, which publishes some AI/CogSci journals. I’m hugely interested, I’ll restrict myself to just two questions: What range of document representations do you have to handle? Do you have to glue together mixed LaTeX/PDF submissions and if so, how does that work out?
Generally, I’m very interested in details about how small-scale publishers manage to work with authors and LaTeX (or ConTeXt) – feel free to ramble.
- Nicola
- Yes, I’m the production editor for the Challenges in Machine Learning (CiML) series published by Microtome. Each volume contains a number of articles that were previously published in the Journal for Machine Learning Workshop and Conference Proceedings (JMLR W&CP) plus unpublished articles in appendices. Each CiML book is produced as a B&W hardcopy and a colour hyperlinked PDF. The original idea was just to import all the individual PDFs, but there were a number of problems with that.
The main issues were the hyperlinks and bookmark generation, but also the CiML books have a different page size to the original JMLR W&CP articles. For aesthetic reasons, I also wanted all the articles to use the same fonts etc., rather than having some in Computer Modern, some using Times or whatever the authors thought looked nice. There were also some that had been written in Word that had been converted to PDF, and they stood out like a sore thumb.
So I decided in the end that the best solution (in terms of the best result, rather than the easiest method) was to import all the articles as LaTeX files rather than PDFs. This meant trying to get the
combine
class to play nicely withhyperref
, which wasn’t easy. Both are problematic enough on their own, and together they break. So I ended up writing two new classes:jmlr
(for the articles) andjmlrbook
(for the book).Together they manage to get both
combine
andhyperref
to work together. LaTeX gathers things like the title and author list from the imported papers and adds them to the TOC on the next pass, and there are also commands for referencing the articles, for example, in the foreword, which helps to automate the process. I wrote a Perl script to run pdfLaTeX and BibTeX, but later changed this to a Java GUI that has some diagnostic tools.The
combine+hyperref
alliance is fairly fragile and there are some packages that break the book (e.g.subfig
), so I added checks for known problem packages into thejmlr
class to deter authors from using them and provided commands, such as\subfigure
, to reduce the number of packages that need loading.The main problems come when authors do something weird or send LaTeX source that doesn’t compile. I suppose they must use
nonstopmode
and don’t bother to check for errors, but this interrupts the build process and I have to fix every error.This is extremely annoying when it’s something as trivial as a double-subscript error. Authors can easily fix that, but if the document has 50 double-subscript errors, I have to go through the document and fix every one of them to make the build work (and also I need to check if any of the reported errors are actually serious).
Each article is scoped when it is imported, so there shouldn’t be any conflict if different articles happen to define the same command, but sometimes authors use
\gdef
instead of\newcommand
and that’s caused serious problems when, for example, the author has decided to globally redefine an accent command that gets used in a later article.Encoding is another problem. One article may use utf8 while another may use latin1, but that’s not as problematic as the encoding switching within the same file, which I often see in bib files.
For the articles supplied in Word, I originally thought about Word to LaTeX converters, but I very soon discarded that idea. I don’t want to produce a close match to the original article, I want to produce the article in a format consistent with the rest of the document.
The only way to do this is to go through the Word document, copy and paste a paragraph into a TeX file, add in the necessary formatting commands, convert any strange characters (or occasionally delete unwanted control characters) and then move onto the next paragraph.
Okay, I think that’s the end of my ramble.
- Charles
- Thanks for your very detailed answer!
- Paulo
- How did you come up with the idea of writing “LaTeX for Complete Novices” and “Using LaTeX to Write a PhD Thesis”?
- Nicola
- They developed from the LaTeX tutorials I used to teach at UEA. I thought it would be useful to have extra materials the students could go to.
The tutorials were usually only around 2 or 3 hours for just 2 sessions, so it’s difficult to cover much.
- Paulo
- Both books received a very positive feedback. Is it challenging to keep the contents updated to the latest packages and tools?
:)
- Nicola
:-)
Yes, it is. It took me a long time before I got around to updating the thesis one.- user4035
- Did you prepare any problems in Latex for the students, like math problems? So the people could solve them and get more experience.
- Nicola
- Yes, my tutorials were usually in a computer lab where I explained a topic and then got them to try it out.
- Paulo
- could you tell us about your children’s books?
:)
- Nicola
:-)
I’ve published two illustrated children’s books with my Dickimaw Books imprint. Both were produced using LaTeX and myflowfram
package. The first one, The Foolish Hedgehog, was developed from an assignment I had to do on a creative writing course and the second one, Quack, Quack, Quack. Give My Hat Back! was inspired by Paulo’s duck and arara:-)
- Paulo
- I should’ve copyrighted my duck
:P
- Nicola
:-)
- Paulo
- you once mentioned in the chatroom about reading your stories to children. How was the experience?
:)
- Nicola
- It was very interesting. Magdalene (my illustrator) and I went to Heartsease Primary School in Norwich. I read “The Foolish Hedgehog” to the younger children and we answered their questions, and then we had a Q&A session with the older children. They asked at one point how I created my books, but trying to explain LaTeX to them was a little difficult! The kids were great and wrote us some very nice thank you letters.
- Paulo
- How lovely!
:)
- Nicola
- We have another book reading in June in Kings Lynn and I’m also doing a book reading at my niece’s nursery in Kent.
- Paulo
- Yay!
:)
- Nicola
- We’ve also got a stall at our church’s country and craft fayre next month, so we’re going to have a very busy June!
- Paulo
- Hopefully with ice cream.
:)
- Nicola
- Yay! As long as the weather’s good!
- Paulo
- CTAN lists several of your packages. Could you tell us a bit about your first package?
:)
- Nicola
- My first package was
datetime
. When I started using LaTeX2.09, I used theukdate
package to format\today
in the UK rather than US format, but it dropped off the TeX distributions (presumably because of a licensing thing) so I wrote a package to replace it. That’s whydatetime
defaults to UK format, as that was its original purpose.I later forked off the ordinal/number string code into a separate package (
fmtcount
). - user4035
- I used this package. Nice to know, that you are the author.
- Nicola
:-)
- Paulo
datatool
andglossaries
are also very famous! Could you tell us about them?:)
- Nicola
- The original
glossary
package actually started out as an example of how to do a glossary in a tutorial. The LaTeX books back then had little to say about glossaries except maybe a brief mention of\glossary
. Theglossary
package then sort of evolved and before I knew it, it had become an unwieldy leviathan that I couldn’t control! So in the end I decided to rewrite it from scratch, which is howglossaries
came about.It’s a similar sort of thing with
datatool
. I wrote the originalcsvtools
for mail merging, but I wasn’t happy with the underlying design and decided it was too complicated to maintain, so I rewrote it asdatatool
. The first version was very inefficient, but Morton Høgholm suggested a much better implementation, which vastly improved it. - Charles
- You said “For the articles supplied in Word, I originally thought about Word to LaTeX converters, but I very soon discarded that idea. I don’t want to produce a close match to the original article, I want to produce the article in a format consistent with the rest of the document.” Have you looked at the
docx2tex
converter? It’s pretty much written with a “save the markup, throw away the formatting” mindset. Unfortunately, not maintained.See the project page. An aside to my recommendation of
docx2tex
: it’s C#/.NET-based, so it’s Win32 technology, but it is supposed to work with Mono and so be usable on Linux. I’ve not tried to get it to work outside Windows. - Nicola
- No, I haven’t. The problem with a lot of Word documents is that many Word users don’t use styles. For example, if they want to write a section header, they’ll just put some blank lines in, type the heading, select it, click on bold and do some more line breaks. It’s very difficult to get an automated system that can recognise that as a section heading, and what level of sectioning.
- Charles
- Yes, definitely. With those texts, your cut&paste technique is probably easiest.
- Paulo
- How did you become aware of the TeX.sx community?
:)
- Nicola
- Joseph Wright mentioned it to me, but I didn’t join up straight away as it was an unfamiliar style of Q&A, and it takes me a while to get used to new ways of doing things.
:-)
- egreg
- Sorry to come in so late. A big hug to Nicola.
- Nicola
:-)
- egreg
- I’m also impressed with
flowfram
. I’ve personally never used it, as I’m more traditional in my page setup. But it has very nice features. - Nicola
- Thanks
:-)
I first wrote it to help design posters, but these days I use it more for books. It does however have a lot of issues, especially regarding anything connected to the OR [Ed: Output Routine]. - egreg
- As Psmith would say, let’s wait till David Carlisle finishes doing
xor
. - Nicola
:-)
- Charles
- How many hours a month do you work for Microtome, generally? (I’m not just being idly curious, I’m interested in data for selling TeX-centric typesetting to small start-up publishers).
- Nicola
- I only work on a voluntary basis for the CiML books, so I only do the work when I have the time to spare (which is why there are still a couple of volumes pending).
- Charles
- I guess hours per volume makes more sense as a metric, then.
- Nicola
- It really depends on the quality of the source code that the authors provide.
- Charles
- And it’s probably impossible to give anyway, given that you are also writing the code for the workflow.
- Nicola
- As far as I can remember it took me about a week to work out how to get
combine
andhyperref
to play nicely, but it is now getting easier as long as authors remember to use thejmlr
class. - Charles
hyperref
is evil. A necessary evil, but evil still.- Nicola
- It is very useful, but it certainly can cause problems.
- Paulo
- Speaking of David Carlisle (of course, we need to tease him), which editor do you use?
:)
- Nicola
- Hmm, let me think… vim.
:-)
- egreg
- I was forgetting we have a package connection: you used my
itnumpar
infmtcount
.:)
- Nicola
- Yes
:-)
I’d really like to rewritefmtcount
with drop in language modules that other people can maintain, as my linguistic skills are appalling. - egreg
- The main obstacle is that different languages have very different ideas about naming numbers!
- Nicola
- Yes, it is. I never intended to make
fmtcount
multilingual, just as I never intended to makedatetime
multilingual, but I got a lot of requests to makedatetime
compatible withbabel
and from there to makefmtcount
multilingual. There are certainly days when I wish I hadn’t! - Paulo
- Any plans for a new package, a new book, etc.?
:)
You did great on the audio extract, you might consider an audiobook in the future.:)
- Nicola
- My writing tutor suggested that the duck book would be great as a sticker book, but I’d have to find a printer and distributor for that. An audiobook would be great as well, but again I’d need to find how to go about burning, packaging and distributing. I also plan to release an ebook short story. That’s just waiting for a cover image (which Magdalene is painting). I’ve also got a novel pending, but that won’t be ready until at least next year.
I also plan to produce volume 3 of my LaTeX series, and have a new Java app pending.
- Charles
- If we’re going to be ambitious, what about a LaTeX class for doing children’s pop-up books?
- Nicola
- That would certainly be interesting. Again, it’s a case of finding someone to do the printing and distributing.
- Paulo
- Could you name something you really like in TeX/LaTeX? And is there something you dislike?
:)
- Nicola
- The quality of typesetting is excellent. There are so many poorly typeset books these days. And I really like the way LaTeX separates content from style. As for dislike – I think that would have to be the output routine!
- Paulo
- Any plans for a LaTeX3 migration?
:)
- Nicola
- Not yet. It’s on my huge list of things to do when I have some free time!
:-)
I forgot to add (some may have already suspected) the patch Morton provided for
datatool
was originally in LaTeX3 syntax, but having no LaTeX3 experience I felt more comfortable converting all the underscores to@
characters. In hindsight, perhaps that would’ve been a good time to learn about it. - Paulo
:)
What do you recommend for a newbie eager to learn TeX, LaTeX and friends?
:)
Your books are great resources.:)
- Nicola
- Thanks
:-)
An easy to read tutorial that was written fairly recently to ensure they don’t start using out of date packages. I really like Kopka and Daly, but that’s getting a bit old. - user4035
- I glanced through your LaTeX exercises. They are small and have solutions, so the student can check himself. Will you prepare more? Also you can improve this page by putting the text into 2 columns and squeezing “4. Using Special Characters” a little bit.
- Nicola
- I’m not planning on preparing more for that book. Two column layout is a bit awkward for HTML. It may look great in some browsers but unreadable in others.
- user4035
- Your site has good navigation. Did you prepare it from LaTeX?
- Nicola
- Thanks
:-)
I wrote most of the pages in HTML (in vim) but some of them, such as the LaTeX books and manuals I wrote in LaTeX and converted them to HTML using LaTeX2HTML. (I know a lot of people think it out-of-date, but there’s stuff I know how to do in LaTeX2HTML that I don’t know how to do in TeX4ht.) - user4035
- The left menu, matching the current page, is especially good.
- Nicola
- That’s just in a floating
div
.The online shop that I’m developing on my site is more complicated, but that’s not operational yet. That’s mostly osCommerce php files, which I’ve augmented.
- texenthusiast
- I have to appreciate your hard work and keen interest in spite of your many roles in daily life. Your Dickimaw LaTeX Series are one of the best tutorial and well written books in a lucid language. Thank you very much for all your LaTeX works, either packages, Jpgfdraw, children’s books and many more. All of them are really great.
I learnt to make MWE from your Creating a LaTeX Minimal Example, it’s a must for everyone debugging LaTeX or asking Q at tex.sx.
- Nicola
- Thank you. That’s really great to know.
:-)
- texenthusiast
- I think we need more women like you and Ulrike madam in LaTeX.
- Nicola
:-)
- Paulo
- Thanks a million for this awesome interview!
:)
- Nicola
- Thanks
:-)
Thank you everyone for turning up, and thanks Paulo for being a great interviewer.
By the way, no one’s asked yet, but my favourite ice cream is vanilla (the nice soft variety with a flake)
:-)
- texenthusiast
- Great to know, I am butterscotch fan but often vanilla also.
- Paulo
- What’s your favourite ice cream flavour?!
:)
- Nicola
- LOL
:-)
I also remember liking guaraná when I tried it in Brazil many years ago. Oh and I like lemon sorbet as well.:-)
- Paulo
- if you ever do an audiobook, can you invite Joseph Wright and David Carlisle as special guests?
:)
- Nicola
- Ooh, that would be fun!
:-)
- texenthusiast
- Thanks always for being our interviewer Paulo.
- Paulo
- ooh
/blushes
… I’m a just a humble servant.:)
- texenthusiast
- what is your motivation to develop java based tools like Jpgfdraw? like
arara
using java by Paulo. - Nicola
- With Jpgfdraw (my first app) I decided it was about time I learnt Java and writing a graphics application was the motivation to do it. My favourite drawing application had always been Acorn’s !Draw, but I couldn’t use it any more when I moved over to Linux. Java isn’t perfect, but it’s platform independent, which is the main thing.
- texenthusiast
- is your cake made using Jpgfdraw? I liked it very well.
- Nicola
- Yes. I’ve done quite a few clip art style line drawings in Jpgfdraw.
(I used to be on our church’s fund-raising committee and I did posters and flyers for events.)
- texenthusiast
- great, ok, I am surprised how you manage all roles so perfectly?
- Nicola
- I’m surprised as well
;-)
- texenthusiast
- is the MWE doc in an update process?
- Nicola
- I might update it at some point and move it over to my Dickimaw website.
- texenthusiast
- I want to know how one gets a ISBN for a book; should we contact the publisher for that or can we do self-publishing and get one?
- Nicola
- ISBNs are assigned to publishers, so if you have a book with a publisher they will use one of their allocated ISBNs. If you want to self-publish, you have to set up a publishing company and buy a block of ISBNs. In the UK, the smallest block you can buy is 10. I believe in the US, ISBNs can be purchased individually, but always buy them from the ISBN agency – Nielsen UK in the UK. (I don’t know about other countries.) Never buy “second-hand” ISBNs.
(Self-publishing isn’t for the faint-hearted. It requires start-up capital and business expertise.)
- texenthusiast
- ok. thanks for your good advice.
thank you so much for answering questions madam. Thanks for your patience and kindness.
- Nicola
- That’s okay. It’s been very interesting.
- texenthusiast
- which Linux distro do you work on normally?
- Nicola
- Fedora.
It’s been great talking to everyone. Cheerio.
- Paulo
:)
Stay tuned for the next episode of the TeXtalk!
I remember Nicola at the University of Essex many years ago. Good to see she doing well.