Which communication protocol or open standard in software do you wish was more common or used more?

Cyclohexane@lemmy.mlmod to Linux@lemmy.ml – 256 points –

Whether you're really passionate about RPC, MQTT, Matrix or wayland, tell us more about the protocols or open standards you have strong opinions on!

348

You are viewing a single comment

LaTeX. As someone in academia, I absolutely love it. It has some issues like package incompatibility, but it's far far better than anything else I've used. It's basically ubiquitous in academia, and I wish it were the case everywhere else as well.

What about Typst?

The Typst compiler is open source. It is the open core of the web app and we will develop and maintain it in cooperation with the community

Try Typst now!

Create a free account to join the public beta.

Beta software marketing with "free accounts" and an open core compiler for a (probably) future paid web service tells me all I need to know.

Even though LaTeX has issues, not being an online service is not one of them.

They host a proprietary service that does all the stuff, the compiler and spec are completely FOSS. So you need to create your own implementations, which is not hard.

I dont think they will close source the compiler. And thats basically everything thats needed?

I have 0 problems with people creating a fancy proprietary implementation to get people hooked. I will never use an online editor, but why care?

Learning LaTeX and working around its quirks seems like a much better time investment than sidegrading to something that lives on premises given by a proprietary commercial project. If someone saw LaTeX and said "I want to make some version of this that is better", without alterior motives, they would probably just work on improving LaTeX (which a whole lot of people do).

Fancy does not mean better, and often is in many ways worse than plain old boring.

You know Overleaf is a thing right?

Many projects need to be rewritten from scratch I think. But I also think an easier markup language for LaTeX could be possible, keeping all the nice templates etc.

From the LaTeX project:

The experience gained from the production and maintenance of LaTeX2e (the version you have been using for many years) had a major influence on our goals for future development and on new code which is now integrated into LaTeX.

A while ago we made the decision to drop the idea of a separate LaTeX3 format that would exist in parallel to LaTeX2e, but instead decided to gradually modernize LaTeX to keep it competitive in today’s world while maintaining compatibility methods for older documents.

I think this decision was pretty much a good one.

Overleaf does not modernize LaTeX in meaningful ways. It only adds cloud functionality and glossy appearance that you can get on dedicated editors anyways.

No, but Overleaf is just a proprietary fancy editor like the Typst one. Meanwhile typst is just as usable for building editor too.

I dont see any arguments against typst really. I am using Markdown all time and find it best, but lacking. Then LaTeX, honestly I dont want to learn as it must be a pain to write.

Now in typst, you can write academic papers etc just as well. All you need is free software, with good backing, modern tooling (rust, cargo), thus it runs everywhere. Its pretty cool!

Overleaf are not benefactors that develop LaTeX for economic gains, unlike the situation with Typst that rely on it (to my knowledge). LaTeX is also cross platform, supported in tons of editors and can easily be converted to other formats with pandoc. It is also somewhat supported in other formats using implementations such as KaTeX for Markdown and Mathjax in HTML due to being the defacto standard for math typesetting.

Writing papers in LaTeX is a joy, not a pain. The end result is also a beautifully typeset document rivalled by none.

or you could also just make an open source wrapper for latex and call it a day.

Nothing needs to be closed source to get people to use it.

And it isnt :D the compiler produces PDFs which can be read with anything. The spec is open so you can write the code with any editor.

Just needs integration, will see if I can add the syntax highlighting to Kate

i suppose that's the case, but if you ever partially open source something, i think you're probably trying a little too hard.

It's not a standard but still its an interesting software so I'll post this here:

Joking aside, I love and hate it. Its paradigm is almost like using the C preprocessor to build a really awkward Turing-machine. TeX/LaTeX does a great job of what it was intended to do; it applies high quality typesetting rules to complex material and produces really good results. I love the output I can get with it and I will be eternally grateful that Donald Knuth decided to tackle this problem. And despite my complaints below, that gratitude is genuine. Being able to redefine something in a context-sensitive way, or to be able to rely on semantics to produce spacing appropriate to an operator vs a variable etc; these are beautiful things.

The problem is, at least once a day I'm left wishing I could just write a callable routine in a normal language with variables, types, arrays, loops and so on. You can implement all those things in TeX, but TeX doesn't have a normal notion of strings, numbers or arrays, so it is rare that you can do a complicated thing in an efficient way, with readable code. So as a language, TeX frequently leads to cargo-cult programming. I'm not aware that you can invoke reflection after a page is output, to see what decisions on glue and breaks were made; but at the same time you can't conditionally include something that is dependent on those decisions, since the decision will depend on what is included. This leads to some horrible conditionals combined with compiling twice, and the results are not always deterministic. Sometimes I find it's quicker to work around things like that by writing an external program that modifies the resulting PDF output, but that seems perverse.

At the same time, there's really nothing else out there that comes close to doing what LaTeX does, and if you have the patience, the quality of documents it can produce is essentially unbounded. The legacy of encodings, category codes, parameter limits, stack limits etc. just makes it very hard for package writers, and consumes a great deal of time for a lot of people. But maybe I am picky about things that a saner person would just live with.

A lot of very talented people have written a lot of very complex packages to save the user from these esoteric details, and as a result LaTeX is alive and well, and 99% of the time you can get the results you want, using off-the-shelf parts. The remaining 1% of the time, getting the result you want requires a level of expertise that is unreasonable to expect of users. (For comparison, I wrote an optimising C compiler and generally found it far easier to make that work as expected, than some of the things I've tried, and failed, to do properly in LaTeX. I now have a rule; if getting some weird alignment to work takes me more than an hour, I just fake it with a postscript file, an image, or write an external program to generate it longhand, in order to save my sanity.)

I think (and certainly hope) that LaTeX is here to stay, in much the same way that C and assembly language are. As time moves forward I think we'll see more and more abstractions and fewer people dealing with the internals. But I will be forever grateful to the people who are experts in TeX, and who keep providing us with incredible packages.

I honestly just use it for my resume with a template I found, so my knowledge is extremely basic, but I really do love the concept that I can “compile” and actually see the source of my document’s formatting.

It really needs to significantly improve its live update capability. Typst is more capable in that regard.

Is it practical outside of academia? I heard the learning curve is kinda big

Nope and yep. It's an incredible tool, but it's got a vim-sized learning curve to really leverage it plus other significant drawbacks. Still my beloved one-and-only when I can get away with it, but its a bit of a masochistic acquired taste for sure.

Template tweaking, as I imagine academia heavily relies on, is really the closest to practical it gets. You do still get beautiful results, it's just hard to express yourself arbitrarily without really committing to the bit.

Outside of academia, would you say it still provides significant upside over markdown?

Markdown and LaTeX are meant for entirely different purposes. It's somewhat analogous to HTML vs PDF. While it's possible to write books with Markdown, it's a vastly inferior solution compared to latex or typst (for fixed format docs like books).

It’s got a vim-sized learning curve to really leverage it

As a regular vim user, I have to say. Vim makes sense after you put some effort into learning it. I can't say the same about latex.

For me it's more pleasant than editing formulae in LO, but still took a lot of time.

It's basically ubiquitous in academia

You mean STEM. In the humanities we do just fine without, tyvm.

I wrote my masters in LaTeX and while I appreciate the structuredness and the fact I could use vim, it was so quirky. Having to spend half an hour to fix a non obvious compile error, more than once, was a big distractor. I'm sure it gets better when you use it more but I don't think I have ever used it since. I'm not in academia and I don't need to solve compile problems when creating an invoice or writing a letter to local government.

I personally feel like it should be a standard extended markdown that allows latex code.