Counterpoint: advisor said no.
“Just use Word, everyone else does. I have never heard of this latex thing, so must be just some trendy useless overengineered software that does Word’s job but worse. Word can track changes just fine, and you can leave comments.” proceeds to strikethrough, highlight, and inline comment everything instead of using either of those features “I want to read what you wrote, not fight technology” proceeds to email you three separate times after forgetting to attach v28 about how a graphic looks wrong because Word ate it
While correct in the sense of word and versioning via mail being a nightmare, I really don’t think you can expect anyone to learn latex just so they can comment in your document. I would have offered to send a pdf. Shoot me.
I would have offered to send a pdf
I would have never considered doing anything but sending a PDF. Even if they do know LaTeX. Unless they’re offering to help edit the code for me, what good is it? It’s objectively harder to read than the formatted PDF.
That said, marking up a PDF is much more difficult and does require more specialised software and know-how than editing plain text or even editing a Word document. So there are some advantages to it.
This is exactly it. My advisor wanted a word doc to edit, not a PDF. I wasn’t quite snooty enough to think that he should learn latex. Though, if he ever took the time to learn (what time?), I’m sure the writing process would be unbearable for other reasons not entirely related.
: don’t even talk to your advisors, just hand in a finished PDF
deleted by creator
Dude was shall we say, hands on about certain things. My dissertation is still embargoed because he is paranoid about being scooped. Joke’s on him, everything that hasn’t been published is not exciting enough to meet his own metric for publishability.
I’m going to send you a pdf, you van email me back with the notes or comments in the PDF itself, whatever souts your fancy, and I’ll keep those notes and send you a new PDF with them.
I did this and I had no issues with any of the thesises I have submitted in my bachelors or masters.
First year calculus teacher, thank you SO much for forcing us to write submissions in latex.
Also, overleaf is a thing, this is not like my 1st year of uni, this 11 years later or so. If your fucking professor never heard of latex they are just bad at academia and shouldn’t be teaching honestly. It’s not just about the field knowledge.
That’s assuming they are competent enough to even use a PDF.
I’m going to send you a pdf, you van email me back with the notes or comments in the PDF itself, whatever souts your fancy, and I’ll keep those notes and send you a new PDF with them.
I do this, but from Word.
I learned Latex for my master thesis. Never used it again afterwards, except for my resumé.
you can still use word with git. it’s versioning first, diffing and merging only where possible. since you probably won’t branch you won’t need the latter, though.
Missing diffs is a problem, though.
I don’t get how Microsoft owns GitHub yet hasn’t figured out any way to actually create a spec that would be git compatible for Excel, Word, and PowerPoint files yet.
Easy, they want you to buy a onedrive subscription.
git checkout -b final_version_revised2_REALLYFINALTHISTIME git commit -am “holy fuck I hope this really is the last edit” git push
git tag "FINAL FINAL FINAL DRAFT - v20"
The weird part is that most modern office software has version control built right in.
And I still do this with all my files anyway.
I should write my resume in LaTeX.
Done it and highly recommend it
Do you have a good LaTeX template for it. I did make a data driven based LaTeX pdf for my resume but it’s a nightmare when applying for jobs these days, since they have that ATS parser nonsense, which will throw the entire resume down if it isn’t as very plain and boring word document without much formatting.
It depends heavily on region. I personally don’t think I ever had issues with parsers. I used the awesome CV template as a base. It’s fairly simple while still not being completely boring. You can find it on GitHub or overleaf iirc (it’s been a while).
Git is like shit for Word documents
I learned LaTeX just so I could effectively use git in it.
I kinda want to learn LaTeX but I rarely write anything and I hate doing it so won’t have much use for it. It’s pretty neat though.
I also saw that there was a way to use LaTex to generate PowerPoint which seems extremely useful because PowerPoint is extremely annoying to use.
I mean yes you can use beamer to make slides, but it is a lot less flexible than ppt/LibreOffice Present.
Yes, I also mde my. Thesis slides in LaTeX which was nice as I coukd reuse the figures.
docx files are actually zip archives with xml in them
Doesn’t matter, to git they are still binary files, which means it’ll check in each revision as an entirely new copy.
Yes, you might only see the most recent one in your working directory, but under the hood, all the other ones are still there in the repo.
Which isn’t any different than keeping them as separate files space wise so what’s the problem?
(Other than Word having built-in versioning.)
what’s the problem?
It’s basically just keeping a bunch of separate files but with extra steps.
I would genuinely rather use git in such a scenario than not because there are plenty of other useful features over a bunch of files in a folder. Sure, obviously if the file is massive it is inconvenient, but that’s not a fair comparison because we’re comparing multiple copies “FINAL FINAL FOR REAL” in a folder anyways. There isn’t suddenly less size that way. It seems incredibly silly to describe it as “keeping files with extra steps” because people aren’t using git for space saving, they’re using it for version tracking. Everything git does is “keeping files with extra steps.”
Everything git does is “keeping files with extra steps.”
Not quite, because text files are stored as incremental diffs, which not only saves massive amounts of space but allows for effective comparisons of what exactly has changed between versions. While the former is more of a nice bonus these days with storage being extremely cheap, the latter is in fact the main reason one would use git to begin with.
Binary files too can be stored as incremental diffs
Yes but without the ability to quickly see what’s changed between different versions (on a semantic level), all it will do for you is safe you some storage.
With a bunch of separate files, you can at least open two of them quickly and do a manual scan, but with git you can only ever have one version checked out at the same time, so now you’ll be checking out an older version, making a temporary copy of that, and then checking out the version you want to compare it to and STILL end up doing just that.
From a workflow perspective, it’s really just extra overhead, with little to no practical benefit.
Don’t put binary files in git
What’s the issue with binaries in git? Just that diff’ing binary files is useless?
They are generally large, uncompressable and replaced instead of updated like text files. All files stay in the repo history forever, they make repos big and slow compared to text files with no advantages provided (e.g. as you said, diffing etc is useless).
If a binary file needs to be stored in git, it’s usually more appropriate to use git LFS for that file. Git LFS stores the binary outside of the repo in the same way that database engines store binary outside of the respective table.
In this case, it would be much smarter to use version control on the text in the document, not tte binary file, which is a feature of essentially every document writer program.
Cool! Good to know.
I wrote about half of my thesis in R Markdown using Git to backup my work. It’s fantastic because you can have your plots and statistics integrated directly into your paper and formatting in Markdown is much easier than straight up latex.
R markdown is awesome. I’d always use it for my biostatistics tests and assignments.
Me with Jupyter Notebooks
I’m dumb, can someone explain this joke to me? Wtf is a git repo?
Git is a tool that makes it convenient and lightweight to keep past snapshots of a directory of text files (called a repository) and compare them. It also makes it easy to have multiple people work in parallel on the content of the directory, see the differences and merge everything into a common version. It is essential in programming, it’s called versioning or version control.
Although it is not easy to access for non programmers because it’s based on slightly obscure command lines. So it’s a bit of an over-engineering to use it for a single file edited by a single person. Especially because you can now put those on the cloud and have some form of version control that allows to easily compare and go back to previous versions graphically.
It may be worth it if it’s a long document that you work upon for a long time, such as a PhD thesis.Thanks for explaining!
Git tracks changes for a folder full of code (aka “repo”) between saves (called “commits”) so you can revert back to previous versions. It’s intended for software but there’s nothing stopping you from using it for documents
Thanks!
I also added a Makefile for mine (LaTeX), and it would add the commit hash to the front page (with an asterisk if the repository had uncommitted changes).
So, if I gave a draft to someone and got feedback, I’d know exactly which revision it was.
Hey, amazing idea, can you share the code?
Makefile in other comments. You’ll need something like this on the title page (this assumes you use my Makefile which puts the version in
VERSION.tex
[that’s the literal name of the file, not a placeholder]):{\bf{\color{red}DOCUMENT REVISION:}} {\color{blue}\input{VERSION}}
Sure thing. This also includes the beamer bit which I used for my defense. It’s all pretty hacky but hope it’s useful!
# # Errors aren't handled gracefully (tex doesn't write to stderr, it seems) # If you encounter errors, use "make verbose" # # For small changes (probably those without references), use "make quick" # # Thanks to https://gist.github.com/Miliox/4035649 for dependency outline TEX = pdflatex BTEX = biber MAKE = make -s TEXFLAGS = -halt-on-error # $(MAIN).log is dumb if we have multiple targets! SILENT = > /dev/null || cat $(MAIN).log SILENT_NOER = 2>/dev/null 1>/dev/null EDITOR = vim -p PDFVIEW = evince MAIN = main PRES = presentation ALL = $(MAIN).pdf RECURS = media/ manuscripts/ VERSION := $(shell git rev-parse --short HEAD | cut -c 1-4)$(shell git diff-index --quiet HEAD && (echo -n ' ';git log -1 --format=[%cd]) || (echo -n '* '; date -u '+[%c]')) all: recurs $(ALL) pres: $(PRES).pdf scratch: scratch.pdf scratch.pdf: scratch.tex @echo "TEX (final) $<" @$(TEX) $(TEXFLAGS) $< $(SILENT) verbose: SILENT = '' verbose: $(ALL) recurs: $(RECURS) @$(foreach DIR, $(RECURS), \ echo "MAKE (CD) $(CURDIR)/$(DIR)"; \ $(MAKE) -C $(DIR) $(MAKECMDGOALS);) @echo "MAKE (CD) ./" clean: @echo "SH (RM) Not recursing; 'make allclean' to clear generated files." @rm -f *.aux *.log *.out *.pdf *.bbl *.blg *.toc *.lof *.lot *.bcf *.run.xml allclean: recurs @echo "SH (RM) A clean directory is a happy directory" @rm -f *.aux *.log *.out *.pdf *.bbl *.blg *.toc *.lof *.lot *.bcf *.run.xml version: @echo "SH (ver) $(VERSION)" @echo $(VERSION) > VERSION.tex nixpages: main.pdf @echo "PDF (pdftk)" @pdftk main.pdf cat 1 4-end output final.pdf quick: $(MAIN).tex version @echo "TEX (final) $<" @$(TEX) $(TEXFLAGS) $< $(SILENT) $(MAIN).pdf: $(MAIN).tex $(MAIN).bbl all.tex tex/abstract.tex tex/intro.tex tex/appendix.tex tex/some_section.tex tex/some_other_section.tex @echo "TEX (draft) $<" @$(TEX) $(TEXFLAGS) --draftmode $< $(SILENT) @echo "TEX (final) $<" @$(TEX) $(TEXFLAGS) $< $(SILENT) $(MAIN).bbl: $(MAIN).aux @echo "BIB (bib) $(MAIN)" @$(BTEX) $(MAIN) > /dev/null $(MAIN).aux: $(MAIN).tex $(MAIN).bib version @echo "TEX (draft) $<" @$(TEX) $(TEXFLAGS) --draftmode $< $(SILENT) $(PRES).pdf: $(PRES).tex $(PRES).bbl tex/beamer*.tex tex/slides/*.tex @echo "TEX (draft) $<" @$(TEX) $(TEXFLAGS) --draftmode $< $(SILENT) @echo "TEX (final) $<" @$(TEX) $(TEXFLAGS) $< $(SILENT) $(PRES).bbl: $(PRES).aux @echo "BIB (bib) $(PRES)" @$(BTEX) $(PRES) > /dev/null $(PRES).aux: $(PRES).tex $(MAIN).bib @echo "TEX (draft) $<" @$(TEX) $(TEXFLAGS) --draftmode $< $(SILENT) edit: @echo "EDIT (fork) $(EDITOR)" @$(EDITOR) ./tex/*.tex *.tex view: @echo "VIEW (fork) $(PDFVIEW)" @$(PDFVIEW) $(ALL) $(SILENT_NOER) &
Thank you!!! I’ll see if I manage to make it work for me.