It’s been quiet around here — too much work behind the scenes — BUT you can still read some of my usual incessant babbling over at the Wiley Exchanges Blog where I write about MathML and its role in Making math and science first class citizen’s on the web.
At the end of last year, I tried to motivate myself to write more so I set myself a tiny blogging challenge: writeo one post each week for the remaining weeks of the year, don’t spend more than for 30mins per post.
It didn’t really work out but perhaps in a good way. Yes, I posted 7 out 8 weeks so that’s close (still, Mike gets to name a charity of his choice). No, I most definitely did not spend just 30min per post (more like 1h, sometimes way more…). But those were means to an end which included a) try out something that gets me to write more regularly and b) make it interesting for my two readers, maybe add a third reader (crazy, I know!).
At the end of the year I was exhausted (so I had to take January off — well, be kind enough to pretend I did that intentionally and not simply failed to write that one last post for week 8). In part this was due to me writing on a couple of other, work-related places. I suppose one could say the blogging challenge helped there; e.g., it motivated me to finish a couple of outstanding blog posts on mathjax.org. But I think in reality it was the holidays and I had enough opportunity to write for a couple of hours (or sleep in to compensate).
As for the means, this exhaustion leaves me in doubt for the first one. Did I simply overdo it? Maybe I just need to pace myself better. We’ll see (thanks to Asaf for bugging me to get back on the wagon).
As for the second one, I think that was a bit of a miss. At least in the sense that my posts seemed to cause a lot of confusion and irritation. Then again, that was somewhat intentional, I just wasn’t happy with the kind of confusion, perhaps.
As for 2015, I will try to pace myself better. First target: finish that post from the original list of the tiny blogging challenge.
[This is week 7 of the challenge but really a post to make up for dropping the ball on week 5.]
Last week I wrote about why I care about MathML in general. Given that I work for a project that serves as a MathML polyfill, it’s worth while to to point out why native implementations matter; they matter an entire alot of mattering.
A while back, Alex Miłowski asked me for some quotes about how native MathML implementations are important so luckily I can copy myself here.
Some people say, “few people on the web need MathML support.” This is true. Just like saying “few people need children’s clothing”.
Why is MathML important? Education, education, and education. Mathematics is a core skill and a vast amount of educational time and effort is spent on teaching children and adults to understand and apply math & science. Very soon, HTML will be the dominating delivery method for educational content across the world. This means mathematics must be HTML, viz. MathML.
HTML rendering should be native
Where should HTML rendering be implemented? In the browser!
MathML has been HTML from its inception and after a (forced) XML-detour, MathML is back where it belongs: a part of HTML5. MathML layout is core HTML functionality, widely used in everything from web communities to professional publishers to educational startups. HTML and thus MathML rendering belongs in the browser.
While browser vendors show great interest in enabling polyfills to behave like native implementations, polyfills implementing layout standards (MathML, Flexbox etc), in the end, will not achieve native performance. The reason is simple: layout polyfills simply enter too late in the game — after the browser layout is done, at a point where the user expects content, not additional rendering delays. Moore’s Law helps a little but, ultimately, performance issues will prevent math and science from fulfilling their potential on the web.
Even the most ideal polyfill will require a conscious choice of the web developer to load it. This poses a grave restriction for end users and the emergence of new platforms for math and science on the web. From webmailer, to web based authoring, to social networks, all of these could turn out to be highly productive platforms — but it’s unlikely their developers will consider adding a polyfill for a perceived niche. With native MathML rendering, rendering MathML would be universal.
The web has revolutionized how we communicate. Not by magic but because thought leaders continually push the envelope, building new tools and platforms that transform how we work, speak, and think. These innovations feed back into standards development, enabling everyone to benefit and restarting the process, pushing us further.
MathML 3 captures traditional mathematical typography. Thanks to polyfills, we get a glimpse of how MathML might develop, how it can revolutionize the communication and dissemination of scientific knowledge. Yet without native implementations of MathML 3, we will never see MathML 4, 5 or 10, and the opportunities this will open up.
It took 50 years from Gutenberg’s printing press to the first typeset mathematics book. We’re 25 years into the web. Do we wait another 25 years or can browser vendors finally invest 1-2 developer years to get us there?
First, I changed the embedded video; it was previously this one.
Second, over on Google+, Harald Hanche-Olsen asked about the claim that MathML is a huge success. Here’s what I responded with.
Re success of MathML. Today, almost all equational content is stored as MathML. This is because almost all scientific (including mathematical) publishers have switched to XML workflows for production and archival where MathML fits in very naturally; similarly most technical writing (e.g., aerospace) is done in XML workflows.
For authoring, it’s a bit more complicated. It is similar to, e.g., vector graphics where applications such as Adobe Illustrator have their own formats but when you save vector graphics for re-use you’ll most likely export to SVG.
As I mentioned, there’s definitely the need for a professional-grade, open source pure MathML editor (ideally HTML5). The only one I know of is MathFlow. But if you have ever used MathJax then you have authored MathML — it’s how MathJax works: convert any input to MathML and then leverage our MathML rendering engine.
Similarly, lots of other tools are able to output MathML — besides converters from TeX (such as LaTeXML or tex4ht), Microsoft Word Equation editor can export to MathML, as does Open Office Math editor, MathType, MathMagic, the Windows Math Input Panel (handwriting recognition), MyScript (ditto), Maple, Mathematica and virtually any other tool you might have authored serious equational content in. (Oh well, I should’ve simply linked to http://www.w3.org/Math/wiki/Tools#Authoring_tools which I recently set up.)
Of course, Word is the big reason why most scientific and educational content ends up providing MathML. I don’t claim (or believe) that people are aware of most of this which was one of the reasons I wrote about it.
[This is week 6~7? Mpf, I missed one (and a half?), bummer. I’ll try to make up for it.]
When I started this writing challenge, I had listed a couple of potential blog post titles. One of them was “Why you should care about MathML”. I realized later that I really didn’t want to pretend I could even try to tell my two readers what they should or should not care about. Instead, I want to jot down (remember: 30mins time limt) a few reasons why I started to care about MathML, alot.
© Ellie Brosh
Unsurprisingly, it was in many ways a story of my education. Here are two quotes from yours truly.
I think MathML is so far the best solution to present mathematical content on the web
— actually me, Dec. 2009
Actually, more stuff wrong on my post; also, referencing Terry Tao’s blog, weird.
But mathml sucks […]
— also actually me, Feb. 2011
(In my defence, I probably meant authoring tools and browser support.)
So as you can see, I flip-flopped a bit there (and, in a fundamentally different way, I still do). So here are five short reasons why I care about MathML.
a stable exchange format
When I started using MathJax on a personal blog (thanks to the above quote I realize I started blogging 5 years ago this month, (local copy), although I think I started to blog a year ealier on scivee.tv (though this seems lost)), I was first annoyed and then very happy to not use macros. Obviously, you can use macros with MathJax but I started to avoid personalized macros at all costs. Ultimately, they prevented me from writing mathematics elsewhere and they limited re-use of my writing by other people (well, ok, that’s more hope than reality I suppose).
MathML does not suffer any of these complications (well, technically Content MathML could if anyone used it). Instead, MathML provides a truly stable format for storing equational content while still allowing for re-use. Granted, it’s not exactly easy to write by hand but neither are SVG or HTML/CSS (certainly not as soon as you want to express something more complex). Still, I’d encourage anyone to spend some time with it (e.g., try copy-editing a random piece of MathML and compare that to copy-editing some macro-filled LaTeX horror). In any case, creating MathML is straight forward, especially for those knowing LaTeX syntax (even if we could use a a good open-source MathML editor). Ultimately, MathML is more readable in isolation thanks to its nature of being actually a mark-up language and not a programming language.
a focus beyond research
What struck me early on was how successful MathML was outside of research. Research mathematicians (and scientists) tend to think their habits are vital for the longevity of mathematical writing. However, technical writing (such as industrial (think aerospace) documentation), engineering, and most importantly school-level mathematics are arguably more important — and have benefited enormously from a mathematical markup that is easily handled by researchers and non-researchers alike. MathML has brought high quality rendering together with easy authoring to an incredibly wide and diverse community; a huge accomplishment.
accessibility, for real
What I also learned early on (in crass contrast to my 2009 self above) was that MathML has turned out to be critical for having truly accessible mathematics.
Of course, TV Raman’s AsTeR voiced TeX/LaTeX long before MathPlayer, ChromeVox or VoiceOver voiced MathML. But besides the refinements (which later tools could so easily provide), the notion of accessibility stretches far beyond voicing and visually impaired users. Features like synchronized highlighting would be much harder in TeX (just think about identifying subexpressions in a complex TeX macro, let alone in poorly authored TeX) but they are critical for helping people with learning or physical disabilities. Even more advanced features like summarization and semantic analysis are much more straight forward in a markup language like MathML than in TeX. And so is search whose importance can hardly be overstated in times of ever increasing publication pressure; without search mathematical knowledge won’t be accessible to us in the long run.
the DOM (etc)
The main reason why MathML is irreplaceable on the web is its compatibility with the DOM. This allows web developers to apply the full breadth of their tools to make mathematical content truly native instead of copying print-based layout. We cannot re-invent everything as Knuth did because web “typography” is far from finished and communicating on the web will probably change drastically every couple of years for the foreseeable future (just like communicating using the printing press did in another age). Having a naturally fitting technology allows mathematics to continually evolve its expression alongside other forms of expression on the web — an incredible benefit (and challenge!).
an open future to revolutionize how we “speak” mathematics
This leads me straight to the last and probably main reason why I care for MathML. What the web has already done for regular language (all over the world), it can do for the language of mathematics: transform the way we communicate; expand, enhance, deepen, and lighten the way we express mathematical thought. You don’t have to be Bret Victor to believe that in 30 years we will have developed new forms of expressions that truly leverage web technology and eliminate baroque limitations of black-and-white, print layout. We should strive to do so much better and I believe MathML is an important step in this direction.
[This is week 4 of the challenge. woohoo.]
Today I only have ~15 min. This week, I happen to be in Chicago for dotAstronomy 6. This might be odd since I’m not an astronomer (nowhere near in fact). It is actually an immense privilege, though, since I’m part of a small group of invited interdisciplinary participants (also including biologists, climate scientists and library scientists). So my perspective is that of an outsider and I hate to admit it: it’s what I suspected all along.
That is, ever since running into the dotAstronomy website a few years ago, I have been a little envious. I kept thinking “This sounds incredibly fantastic. How could we do something like this for mathematics?” Until today I could at least pretend that it couldn’t actually be as great as it appears. Because nothing is, right?
My two readers won’t be surprised to hear it: I was wrong. dotAstro is every bit as exciting, enlightening, creative, and savvy as I had hoped. A fantastic group of scientists from all walks of scientific life, including “recovering” researchers who have been led to non-standard careers while retaining a deep, nay fierce enthusiasm for their field as well as for the untapped potential offered to scientific communities by the web. This first day has been a perfect mix, starting with excellent talks, switching to amazing lightning talks, followed by an exhausting-because-engaging unconference sessions, and finally some great conversation at the pub (including perfectly greasy US bar food).
Luckily, I don’t have to bore you with my notes but can simply point you to the live-blogging of the first day by @vrooje. In case my notes go up in flames, I could probably reconstruct half of it from the Twitter hashtags of the unconference sessions I attended, i.e.,
- #hackj (hack the journal)
- #astrocult (identifying dotastro culture)
- #dotmu (make science museums better)
- #dotall (reach out to all audiences)
Now I’m exhausted but excited for tomorrow’s hack day.