Live CEOing Ep 786: Design Review of Graphics, Geometry, Graphs

Design review meeting (part of work toward Wolfram Language v14.1) led by Stephen Wolfram with Charles and others. Main topics: AR publishing (arpublish) and its QR-code → phone → Vision Pro workflow and UX issues (color/lighting not yet carried in prototype; Vision Pro lacks barcode reader so sharing via phone/Safari is used), 3D asset export and 3D-printing support (color supported in FBX/GLTF/USD but not standard STL; guide pages and potential gallery/collections discussed), geometry improvements (CSG region styling supports color directives now; polar-curve filling implemented via ray-tracing-in-polygon approach with questions about self-intersections), and graph work (performance improvements demonstrated via PageRank centrality benchmarks and triangle counting; large-graph rendering/drill-down and graphs-with-ports remain in progress). Coordination needs (Wolfram|Alpha server/export pipeline, Linux USD export, cross-team project management) were noted as action items.
Chapters
Okay.
Hello, everyone. Welcome to another Wolfram language design review. Part of our Collection for version 14.1 today. Discrete computation, geometry, graphics, graph theory, I think lots of G's. Okay. Okay. This is about Arpublish at the beginning, right? Yeah. So what is the workflow?
So. So, so, a.
The.
The. The previous workflows of getting a QR code and printing your phone to it has been augmented with supporting material, so.
Unbelievable. Okay, That's a very small QR code. I can. I mean, on my screen. I guess I can make it bigger. Okay, so I'm supposed to point my phone at this. Everybody can probably do this if you try it at home. Let's see. Switch on the camera, goes to a cloud page and. Oh, that's nice. Now, I mean, the scaling is kind of crazy. You know that, right?
Yes. We are still working on the design of the page and we run it to the.
Wait a minute. When I. When I went to full screen, it lost its colors.
You mean when you switch to the AR mode?
Or you mean I'm going. Okay, so I go to the page. Let me see if I can. I could probably share my. My phone if necessary. Well, this is a nuisance to share my phone, but I probably could do it if it is. Okay, hold on. Let me see if I can't just share it with a camera here. Hold on a second. All right. Put my phone there. See that? Okay. Bigger. All right. Okay. So that's obviously very small in the frame. Yes, that's wrong. We agree.
Yes.
Now, I mean, if I move this around, nothing much happens. It moves. It doesn't. It doesn't turn. It just.
Oh, you have. You have to press on it, and then you'll actually switch. Then you. So you essentially, you select the model and then we switch it to the AR VR mode.
Okay. Well, that doesn't look right. I mean, it doesn't. It doesn't turn and it's. I don't understand what's happening.
Right, so. So now you pick up your phone and, you know, genuine in the AR environment. And then you press on that cuboid on the.
No, it doesn't work. Doesn't work. It's just showing me. I mean, it. It's just showing me a gray silhouette and it's not rotating. Should I be able to touch it and it rotates or what?
Yes. So you touch it. I think you maintain it a little bit. Then you will actually stay in your AR environment in this case of that.
Okay, so here we're in the AR environment. It's a bit small. Okay. So I can move it with my finger. Pinch zoom. Is pinch zoom working? Yes, it is, but it's gray. What happened to the colors here?
Yes, in this case, actually, it. It's great because the color you have in the object, I mean, in the current prototype build, we don't yet carry the light, you know, in the product. You see it with color. Those color actually coming from the light. If you want the color. If you pick the molecule, for example, the color are embedded in the graphics, so we carry them correctly. So.
How do I get back to this? How do I get back.
So you just press the left button to go back to the next previous page.
What left button?
On the browser, you have the arrow.
Okay. All right, so I'm going to go to the molecule and then I click the molecule. It washed out. Let me see if I can make it less washed out. I think if I put a piece of paper behind it, it will not saturate as much. Right. Better. Okay. All right, so now I see. So now I can see now. Now I'm in the mode, but it's not moving. What's happening?
You have to press the.
The cubo.
Cuboid on.
Right. Okay. And now I go to object, I guess. And now. Okay. All right. So the main thing that's happened here is that, That you're carrying colors and so on. And textures.
Yes. So we are working on carrying color, texture, light, so all the directive or.
Styling in general, shaders.
Okay. Okay, so how does that work on the Vision Pro? For example, how do you actually get to this on the Vision Pro?
Okay, so that's the other workflow that we've been working on. So, Charles, could you describe that?
Right, so for the Vision Pro, there is a standard workflow where you, I mean, we are currently working where essentially you have to. You specified when you do ar publish that you want, you know, the target system is Vision Pro and the same as on the phone. So as you scan your, you know, you scan the URL on your phone, you can share that URL to your Vision Pro. So let's go. So on your device, on the website, I mean, on the Safari, you can share a URL. So if you press it and you are connected to your Vision Pro, you should be able to share it as you usually share any other file or data in the Apple ecosystem.
Okay, I understand on the Vision Pro, you're saying I bring up Safari inside Vision Pro.
No, you use your phone. So the same as you did right now. Right. So when you scan that QR code you get to our website, you know, cloud object, cloud website.
How do I get that into the Vision Pro?
So by pressing the sharing button so you share that URL to your Vision Pro. So we are still working on which.
Sharing button.
On Safari and my disclaimer is that we are still working on that workflow. We are doing the last testing, we just got the device today. So that's kind of one of the workflow where from the QR code you can actually directly share it to the Vision Pro to your phone. Because right now Vision Pro doesn't have a barcode reader.
Right.
Like your phone. Unless there is an app which can actually read the barcode, then you get directly the file.
Yes, I mean the problem is that the Vision Pro is potentially not even showing you the outside world. It knows what the outside world looks like, but it may not show it to you.
Yes.
So the fact that you have a QR code there on the outside of the Vision Pro is not relevant. But I'm still not really understanding how this magic sharing from your phone. So it knows the phone knows there's a Vision Pro nearby through Bluetooth or something?
Yes, usually in the Apple ecosystem you see actually all your device. Right. You can see your phone, tablet and other stuff. So you can share with us.
Okay, all right. So that's what you mean. Yes. And then it shows up. I don't remember how it shows up. I. I'm afraid my Vision Pro has been sitting on my desk here unused for a little while, I'm sorry to say. Okay, all right, what else to know about. Okay, so demonstrations, getting 3D content for those, is that a realistic ongoing thing or is that like a millions of years in the future type thing?
Realistic? I discussed already with Bob and Andy about that. So is, you know, that just finished some project and then we start to work on that.
Well, Demonstrations has needed a facelift for a while. And is this part of that facelift or what?
Yes, I think they want to put it part of it as soon as they finish the main project.
Okay, well, from Alfred, I heard this was a complicated thing because of Linux.
Well, personally not complicated, but we need to be able to actually, you know, export USD on in Linux. So it's what we are working on.
Either that or we have to have another mini server that's running with a different OS that produces that, that pipes its data through to orthmapa servers.
Yes, that's one solution.
Is there a good reason why USD format is hard to support under Linux?
No, it was just the first release. We just focus on the device. So we focus on the Apple ecosystem or on the Android. So Android is gltf. Apple was USD.
So.
You have an extended to, you know, window yet or Linux.
Yeah, that's fine for the suggestions part. Now I mean is there evidence? I mean like what are the killer app type cases here? I mean do we have like all the Polyhedra? All the standard Polyhedra. Surely there should be a library of. I mean what about Math World as a place to have QR codes Peeling off Polyhedra, so to speak. Am I making sense?
Yes. Like we have on the right hand side.
Right hand side. What?
No, I say when you open a mat wall page, right on the right hand side sometimes you have the corresponding Wolfram Alpha query and such. So it should be possible to have the QR code there or such.
Yes, that seems reasonable. Okay. And right. I mean. Okay, but the Wolfram Alpha thing, I believe there's some other plumbing that's complicated. Even if we can get basic USD export on the luxury. Not true.
I'm not too familiar with the whole framework on Wolfram Alpha side, so probably I'll have to check with Michael and others.
Yes. I mean have you communicated with that team? Is there some project manager involved here?
Well, I discussed with Michael already.
That's not really good enough. I mean there's some look to do a multi team project like this there has to be some project manager who's trying to pull this together because the way I heard this is first of all I was told by the Wolfram Alpha team you guys said it was impossible because of Linux export. Then I heard oh, there's a versioning problem on the WolframAlpha servers. Then I heard various other things. Then there was the question what's the UX supposed to look like? How prominent should this be? And so on. So you know, somebody has to coordinate this and I don't know which, I mean somebody from the. Probably the WolframAlpha project management team has to get involved. So is there somebody here who can make that happen? I'm taking notes. We'll discuss this with Jezebel or Tracy who is my manager and we'll find a way to it. Fine. Okay. Because otherwise it's not going to come to closure because it has complicated things to do on the Wolf Alpha side and on this geometry side. Makes sense. Charles? Roger.
Yes.
Okay, let's go on CSG styling for CSG regions. That's cool. Okay. Nothing more to say about that other than it now works. I mean, can I put material properties into CSG region things?
No, not yet. To that level. So we just support the color directed. Okay.
Okay. Well, that's nice. 3D printing with color. My gosh, that's been a long time coming. Is it realistic? I mean, does it work with the actual. Like, is that special? Is. Would this work with STL format?
No. So FBX DI and search format should carry color.
I see. So STL does not carry color.
Yes, at least on the standard. Standard version. Some people have been doing some extension which are more custom, but.
Okay, so again, do we have many downloadable 3D objects, for example, from MathWorld or anywhere else?
Yes. In the guide page we have all the variety of all the. You know, we did a whole project of trying to generate geometry from all the data collection we have.
Right.
From anatomy Chemical.
So where is that?
If you go to the 3D printing home guide page, there should be a list.
That's probably not right. Okay, well, okay, but this is not a. A page where these things have been generated. This is a page which tells you potentially how to generate them, right?
Yes. So you want an actual page like a collection in London?
I think so, why not? I mean, it was less interesting before we had color, but seems like. I don't know. I mean, you know, it's maybe. Maybe it's not worth it.
Can you go all the way to the top? We have a new guide page for AR publish that we are under development. Scroll back up. So you see that augmented reality.
Yeah.
Okay, so we've done more work there in terms of guiding two different ways of generating. And it's a little bit different because that's not necessarily only geometry. Graphics is fine too here.
Okay, well, I still think there is a potential. Maybe nobody cares, but there's a potential to just have like a collection of polyhedra knots, things like this if we have a place to hang them from. Am I making sense? Like a gallery page? Yeah, for example. But I mean, I think. I would say. I don't know, I mean, maybe with a decade or more too late for this, maybe this time has passed. I don't know.
But I think it goes. It goes hand to hand with, you know, 3D printing and AR. Maybe we can just package all of them and have a gallery.
Yes, that's possible of QR codes and 3D printing files, all these different things. Where do we hang that page? I mean, possibly math worldy type place, but I just feel like we don't have quite enough to. I mean, We've also got like, you know, 3D printouts of hypergraph models and so on, but I'm not sure how significant those have been, except in a few very specific cases. All right, all right. Regions. Is that new filled polar curve?
Yeah. So this is essentially triggered from WolframAlpha requests. This is a. A common thing that people do there.
Oh, lovely.
And they want to.
How does it. Is it obvious what you mean by filling? Does it mean. Does it include the origin? Is not my question.
I'm not. Not sure.
Well, I mean, what does it mean? So a polar curve has the feature that it is a distance away from the origin. So I guess it's the case that for any such curve, for any such set of parameter values, it is clear how to fill it, because you start filling at the origin, you just fill it out. Every. Every radius vector that goes out to one of these points. Yes.
Oh, yes. See what you mean.
Yeah, go ahead.
Yes, but I tend to think it the opposite way, where I just take the polar curve, which is closed. I mean, if it's closed, and then I take the interior, same as we do for polygon and such.
Okay, but let's say I do this.
If you do that. Charles, what if you have something that crosses itself?
Yeah, I mean, what do I have? This. Wait a minute. Polar curve. Oh, I'm. Okay. Let's try this. Why did it not do that?
We try to detect if the function is periodic.
Well, but just returning without a message is really not very nice.
Yeah, we are still working on that function.
That's a bit unclear to me how that works. What is that doing exactly?
Right. So essentially we. The polar curve is defined by the boundary. And then we use the ray tracing, like we do for polygon, to define what's the point are inside and outside. So in this case you have.
Wait a minute. Inside and outside going from the origin or what?
No, any point, you put a ray to infinity.
And you count the number of intersection with the boundary.
That's how polygons work.
I see. Okay, this is cool. So in functions like area and so on bezier curve, where's the.
Yes, yes. So now arc length and such will work on bezier curve on this client.
That's good. That's good. Performance improvements for large graphs. Great. I'm a customer. How much and how achieved?
If you open the cell, there is a.
Which one?
You see that there is.
Yeah, that's close. What are you doing with it here? This is. This is just visualization of the thing or what?
Yeah. So that's the. I mean we run the benchmark on the on graph. So those are the vertex count, the number of vertices. I see, you know, the first bar charts, the first column there. It's you know, a little bit more than 700 vertices. And then we go higher.
Yeah, but I don't understand what are you, what timing are you giving here?
So that the factor that's in there, see the, the blue and the red. So the blue is current.
Okay, but this computing page rank or what?
Yes, it's computing page rank centrality. And the factor says like the first one is 1.5 times.
I got it then. But I just didn't know why we were computing that particular quantity.
Well, this is an example of an accelerated operation and that's the factor of improvement. And you have to use a collection of graphs because they're all sparse. Right. So you know.
Well, these are nice, but how do these affect like rendering?
They don't.
So these are just graph operations of various kinds.
Yes.
Centrality measures or other things too.
Right now it's just centrality measure.
Okay.
Other component like connectivity and traversal. We are pretty fast. I mean we don't have yet anything to.
Okay. Graph triangle count.
So the page is still under development. Just put it recently.
Okay, but this is. How does this relate to sort of cycle count?
Right. So this is, this is special case of cycle of length three, which in.
Social network analysis is heavily used.
Yes.
If anybody's still doing that. Okay. I mean, looks good. I mean, I don't know. Is that what it's always called? Graph triangle count?
Yeah, usually people call it triangle in graph. So.
Okay, sounds good. So okay, what about the major things that we have coming? So is this, I mean, is this the main things your group has been working on, Charles, or are there a whole bunch of things that aren't making it into this version or whatever?
Well, these are the parts which are ready for this version. I mean, we are still working on other stuff.
Okay, what's the status of rendering very large graphs with drill down things?
Oh, well, that one we haven't. I was not sure we even have it in the list yet. But for rendering for large graph, that work fine. So we probably have to work on the drill down part.
Yes. The other one is graphs with ports.
Yes.
What's the status of that now?
So we are still. It's still in the design stage.
Are you going to be ready to bring it to a design meeting soon?
Well, no, we can push it for 14.2.
I think we should. I think it's important. It also relates to the whole string diagram story, which is a whole broader graphs meets functions story. Okay. I mean, there's some other utility functions which have made it into the function repository and seem quite sensible, like fixed point graph and so on, which presumably. I mean, you presumably been looking at the function repository or not?
Not daily, but yes, I'm aware of some of those new functions.
Okay. So we probably need some design meeting at some point to go over those and decide which ones are worth trying to promote. Okay. Is there anything else I should know here?
No, I think this is it.
Great. Okay, so thanks. That was a short meeting. And let me just check one thing here, Ethan. Our live stream is asking, how about knowledge graphs for rags? I mean, we have a whole lot of stuff coming for rags. Yeah, I don't know whether that's relevant to. Don't know whether this. We have a bunch of stuff coming in this version.
We'll. We'll talk about racks in the machine learning review for sure.
Okay. I mean, I don't know what the.
I'm not sure exactly what he refers to there, but there's a gazillion types of graphs in the world.
Right. All right, sounds good. Okay, see you guys soon. Thanks. Bye. Bye.
More from Guy

Cheryl Strauss Einhorn | The Human Edge: Smarter Decisions in the Age of AI | Talks at Google

Rachel Glennerster | Innovation and the Center for Global Development | Talks at Google

Rebecca Winthrop | Rethinking the Purpose of Education in the Age of AI | Talks at Google

Dr. Robert Wachter | A Giant Leap: How AI Is Transforming Healthcare... | Talks at Google






