Apple's WWDC Mystery Coding Project Revealed
Author: Drew McCormack
For those of you who have been wondering about what Apple's mystery WWDC Science Coding Project will be, I am now able to spill the beans. I'm sure some have already connected the dots, but for those who haven't figured it out yet, Apple's WWDC code-a-thon is centered around the new open source Core Plot framework.
The Core Plot project began back in January after a post I made here on MacResearch as a 'call to arms' to build a decent open source plotting alternative for Apple systems. There are some options already available, such as SM2DGraphView and my own Narrative framework, but these are getting long in the tooth and are reasonably basic. There is also the very capable DataGraph framework, which is a commercial offering, but one drawback of all of these solutions is that they were developed before the iPhone, and do not support what has become a very important platform for developers.
The response to the article was overwhelming, and the Core Plot project was born. The goal was to develop an open source (BSD license) framework that could be used on both the Mac and iPhone. The whole framework was to be built on top of the latest Apple graphics technologies, in particular, Core Animation. This not only allows the framework to run on the iPhone, it also opens a whole world of possibilities for animating plots.
The Core Plot project is still very young, and is not yet at a point where it can be used in real applications. The plan for the WWDC code-a-thon is to try to get at least the most basic graphs working, so the framework can start to be used. This will hopefully further drive development.
If you're going to WWDC, and want to give something back to the Apple Developer community, and get a plotting framework in return for use in your own projects, come along and contribute to the Core Plot code-a-thon. You don't need to have any involvement in Core Plot to take part; we have all sorts of projects, big and small, that you can contribute to. Even if you don't want to code, come and join in the design discussions, or just hang out and encourage other developers from the sidelines. The more the merrier.




Comments
Apple's WWDC Mystery Coding Project Revealed
This sounds great that the framework has attracted Apple's attention.
Grammar of Graphics
I hope the project members seriously consider implementing Wilkinson's Grammar of Graphics:
http://www.springer.com/statistics/computational/book/978-0-387-24544-7
I've been loving an R implementation of GG, compliments of Hadley Wickham's ggplot2 package:
http://had.co.nz/ggplot2/
(The ggplot2 book is available for download until the print version comes out later this summer: http://had.co.nz/ggplot2/book/ )
Mike
Re: Apple's attention
Yes, I think Apple have been watching the project from a distance for a while. They want a good plotting option on their systems as much as we do, so we can count on their support.
Drew
---------------------------
Drew McCormack
http://www.maccoremac.com
http://www.macanics.net
http://www.macresearch.org
Plot Framework
A number of people on MacReseach expressed an interest in contributing, they may well not be at WWDC but it would be great if we could keep them in the loop.
It must implement (La)TeX
It must implement (La)TeX support to produce good looking graphs.
It is essential that (1) the font on the graph axes, legend, title, etc. is the same as in the surrounding text; and (2) all the math support that comes with TeX must be present when typing in axis labels and legends.
Without these features, I will not take this too seriously. Because as we all know, anything not written with (La)TeX tends to be ugly. The text looking good but the graphs not just doesn't cut it.
Re: Latex
My view on Latex is somewhat different. I often find latex, when used with default settings, looks very outdated.
It's not clear yet what we are going to do for text formatting. We could write our own engine, or just leave it up to the developer by supporting simple text and images. If a developer wants a latex equation, they create it with latex, make a PDF image, and set that in the plot. But none of this has been decided yet.
Drew
---------------------------
Drew McCormack
http://www.maccoremac.com
http://www.macanics.net
http://www.macresearch.org
Re: LaTeX
I'm with Drew on this one. LaTeX is excellent for typesetting text and math, but I don't know that it is necessary for publication-quality graphs. With the ability of Core Plot to export vector PDF, and a tool like pdflatex, you can easily generate and place print-ready plots in your documents. I used pdflatex and outside tools for all of the plots in my Ph.D. dissertation (plots generated via SciGraphica and QtiPlot on Linux), and I'm very happy with the way that document turned out.
As far as LaTeX-style typesetting within the axis labels, legends, and other text, pulling in a LaTeX typesetting implementation might be a bit heavyweight. I've already written something that does this kind of typesetting in Core Animation (including LaTeX output for mathematical expressions), and will try to integrate elements of that within the framework.
_______________
Brad Larson, Ph.D.
Sunset Lake Software ( www.sunsetlakesoftware.com )
Latex
I have mathematician colleagues who swear by Latex but I also have chemists and biologists who would never dream of using it. Whenever I use it I just feel there ought to be a better way of doing things.
for my MSc thesis, I used
for my MSc thesis, I used LaTeX and all the graphs or diagrams were created using OmniGraffle 4. I just exported them into PDF format and voilà!. I also have friends that swear by LaTeX, others say that is a waste of time and they prefer using MS word and others that are interested in learning LaTeX ...
LateX in Cocoa based app
What would be very useful is a Cocoa based version of Lyx to easily write LateX based documents.
TeX and Cocoa
Guillaume, there are some efforts to combine TeX with Cocoa, see eg here: http://mactex-wiki.tug.org/wiki/index.php?title=Front_Ends.
Fantastic news!
Hopefully, this will give the project a push & generate more attention where it's needed/due (macresearch.org & scientific computing on Macs).
TeX and Cocoa
koen, I was thinking about a Cocoa version of Lyx
http://wiki.lyx.org/Mac/Mac?from=LyX.Mac
I don't think it exists
Just to point out that
Just to point out that DataGraph and the DataGraph framework supports LaTeX fonts and expressions right now. I don't support all of the equation commands, but the most common ones: ^, _, \frac, \sqrt, \overbrace, \bf, \it \uuline,.... as well as a lot of characters such as \alpha, \beta, ... (and this is a long list). I even add some commands like \red, \blue \euro, \degree that I think make sense. I'm open for supporting more upon request.
The latest beta improves drag and drop so you can drag an equation from LaTeX iT and the like into either the command view or onto the drawing to add it. This allows you to add more complicated equations into titles or as labels.
I personally like LaTeX, and think that it is great for writing up text and mathematical equations. Graphics are handled very much like a programming language, so I can see why some people don't like that. LaTeX has very much the attitude of "you don't want to do that, this is what you want to do", and it is fairly hard to make it do odd formatting. But the fact is that often LaTeX is right and you are wrong. A lot of thought has been put into optimizing the look of whole paragraphs, which is something that I haven't seen in any layout engine (TextEdit and the like work on a line by line basis). I use TeXShop myself, and have since Richard Koch first came out with it. Before that I used Textures.
David
MacResearch gathering at WWDC?
Does MacResearch plan to have a gathering at WWDC (apart from the Science Coding Project)? If so I'll be there.
LaTeX or not LaTeX, at least equations
I am a regular user of LaTeX for my scientific articles. To me, supporting LaTeX in CorePlot seems a bit overkill. However, I do would like to produce equations in my plots (and not only include plots as PDF in a LaTeX documents). Sometimes, the captions and axis labels need to contains some fairly complicated mathematical stuff.
Great intiative anyhow. I'm looking forward to it!
nice job, drew and others...
Well done, getting the attention of Apple! I think the LaTeX discussion is somewhat premature - I am all for getting a set of core functionality (pardon the pun) for points, lines, axes, annotation, legends... and then having hooks that allow folks to add functionality.
In any case - have fun at the meeting!
Sincerely,
Sridhar
Re: MacResearch gathering at WWDC?
I am not aware of a MacResearch gathering, but I think the Core Plot room will have a lot of MacResearchers there and will probably become a defacto hang out for us all. So just come along, even if you are not planning to do any coding.
Drew
---------------------------
Drew McCormack
http://www.maccoremac.com
http://www.macanics.net
http://www.macresearch.org
Framework-level support for LaTex in Cocoa
I would like to put my vote in getting some type of native implementation of LaTex support in a Cocoa Framework. CorePlot looks to be a obvious place for it to start as a few prior posts have noted that equations in plots are sometimes a must. Having worked at a national research lab for almost 13 years, I have yet to interact with a physicist/mathematician who *doesn't* use Latex. (Heck, some of them have been here so long, I swear they helped design the darn language)
There has been a increasing amount of interest in getting all sorts of physics and math related tomes into a more portable mobile version (iPhone). Doable from my end development wise, except about 80% of any given publication is filled with LaTex generated equations. Being able to code all of this stuff and then 'compile' it at run-time would be a true blessing. Including 10k+ small png files per version just isn't feasible.
For those interested in a keen eye-glazing experience, snoop around: http://pdg.lbl.gov