Hacker News new | ask | show | jobs
by zzless 1265 days ago
I have heard HTML/CSS mentioned as an alternative and I pray every day this time will never come. Even taking all the complaints leveled at LaTeX at face value, using HTML/CSS looks like pure hell to me. Allow me to elaborate.

1. You mentioned forgiving. One may not like the style of TeX error messages but its tracing facilities are extensive and given enough time and perseverance one can track nearly any layout issue down an correct it. Compare this to CSS silently ignoring incorrect syntax, having different syntax across browsers, etc. I would take strict syntax checking over this mess any day.

2. Many complained that LaTeX has more than one way of achieving the same result. True but how many ways are there of centering a div on a page? I can list six off the top of my head and there are probably more.

3. You casually mentioned '...except for maths things...' but this is far from minor. I cringe when I read engineering papers not written in TeX: the formulas are so ugly that they border on unreadable.

4. CSS may be wider known but unlike TeX CSS is a moving target. Being designed by a committee it carries all the flaws, like kludgy design in the name of 'compatibility', poor choices of syntax to make it appeal to a wider audience, etc. The designers of CSS are so enamored with the 'cascade' but in practice it is rarely used as intended. The 'important!' kludge as a perfect testament to this.

5. LaTeX syntax may be unappealing to some but HTML takes it to a whole other level: whitespace that affects the layout yet no easy way of getting rid of it (HTML style comments are a torture device); too verbose... one may not like the backslash but what about <...> </...> ? Five extra symbols!

6. LaTeX engines produce full featured PDF so hyperlinks are not a problem (most LaTeX documents have them). Yes, CSS has so called 3D graphics but it is anything but programmer friendly. What good are 3D transforms if one cannot even use simple lighting effects programmatically; c'mon, at least give me Lambert reflection! Incidentally, inline JavaScript can be included in pdf documents produced by LateX as well (although ... why?)