 One of the goals of the T2 Tile project is, well, the main goal is to build a hardware implementation for the movable feast machine, a particular kind of architecture, and one of the most important things that most basic beginning things that the movable feast machine has to provide is large object motion, where it depends on exactly what large, what object and what motion means, but let's take a couple of minutes to marinate in this. We're actually a little sunlit getting in, reflecting off of the afternoon in the South West like much yet, but that makes me really excited to be that feels full of potential. So hey folks, it's T Tuesday, 3122. These were the goals from last time. I'm just going to, instead of going through them in this order, I'm just going to do kind of a news report because there's all kinds of things going on. This may take a little bit longer than I tried to say for myself, but you know, I'm going to let the casual YouTube audience go. Is if there's content that I want to report to you, I'm going to report to you. And, you know, you are here, I am here. That's what matters. So, OK, let's get into it. Number one, ULAM 5, the latest version of the programming language designed for the movable feast machine to run on the T2 Tiles is finally released. The previous ULAM 4 was released in 2018. ULAM 5 was supposed to be come out a couple of years ago or year and a half ago. Anyway, it is now out. Elena is the the principal author of the ULAM compiler and made all this happen. There's a tremendous amount of new stuff. And we got all the way to have Ubuntu packages. Not for everything in particular, only for 64-bit architectures, not for 32-bit architectures. Does anybody care about 32-bit architectures anymore? I mean, I wanted to it's the packages aren't supporting 32-bit for a really stupid reason, but there's no end of stupid reasons. Once one starts getting into dealing with this stuff and I just couldn't go far enough, but, you know, I will show you. All right, so, you know, Monday, this is, you know, yesterday. I was finally settling down to this because I hate doing it. So it was like, OK, figure out what I need and then go start springing the bear traps and, you know, just fail, fail, fail. And then eventually get to a fairly, you know, this piece of software has to be newer than this version. That piece of software has to be older than that version. It was like there's no solution. And so, like, can I go all the way back to 2016 era, you know, like before America went to hell? Um, to get ancient software. So to 1604, that's an Ubuntu distribution from 2016. Can we make a VM and run it there? And that eventually started to work. And then I started getting a higher class of errors. And eventually I actually got far enough that I could start sending packages up to Canonical. That's the company that does Ubuntu. And when you're contributing packages for a personal package archive, you send the source code up to them and they build it on their build farm. And if they don't like it, it doesn't, if it doesn't build, they don't like it. And, you know, wasn't getting it to build failed here. The clock just keeps spinning. But by like eight o'clock last night, I got everything. The 64 bit builds finally working. And, you know, OK, I will take it. Oh, yeah. And just to show how easy it is. Now that we have packages, I'm going to try to do a demo on a VM, because, you know, I've actually become quite a bit more competent with modern VM stuff. They've come a long way. All right, so this is a brand new Ubuntu 2204. That's the most recent long term thing. I'm going to see if I can connect to the personal package archive, install Llam and run a program while we watch. OK, so no, I do not want to connect my online accounts. No, I do not want to set up live patch. No, I do not want to send system info about this virtual machine that I am about to toss immediately. OK, I'm ready to go. All right, so I need a terminal terminal. OK, and now I got to do the magic command, which I have pre-typed over here so that if I can, can I paste it? No, I cannot paste it. sudo add at repository, PPA, actually, MFM. OK, and the password for me here, did I blow it? So, oh, is it lowercase? I think it's lowercase. Maybe it's lower. I think it's really lowercase. Oh, repository. Yeah, jammy. Yeah, yeah, yeah, press enter. OK, all right, so, theoretically, that now made, all right. So now, I don't actually, software, right? So, if I start this up and I type, I search for ULAM, it's taken for, oh, great. Yeah, I really, I really need the application ratings. All right, come on, I don't want, search, synaptic. See, I don't use this, I use synaptic because it's the old one. Does that mean, I guess I'm going to pretend it means it's done? So now can I run synaptic? Oh, dear, I knew this was a bad idea. That's what I chose to do it anyway. So now, come on, mark for installation. Yeah, it's going to mark a bunch of other stuff. Oh, this is probably going to take quite a while. Yeah, yeah, yeah, do it, do it, do it, do it, do it. I wonder if I should just go, maybe, yeah, yeah. What if I go back to other stuff and then we'll come back to that? That's how easy this is. All right, in other topics, one of my goals for this time was to learn more about self-publishing so that I might be able to get this little science fiction story, Search Quiet Wake, out to the world and just to try to, you know, be able to speak in my own voice, whether anybody wants to hear it. I don't have to convince a publisher or an editor first to get it out there. If I can find an audience, I can find an audience directly. I was looking, you know, there's this Amazon's got a Kindle direct publishing thing and then, you know, this is great. Rin, in the Discord, sorry to bug, saw in your last video, I think I went into publishing, you know, Spirits might want to discuss. Yes, that's exactly what I wanted. So we had a bunch of interactions and, you know, it was great, you know, from someone who'd actually done it. So I learned no need to sign up for a Kindle direct publishing. I just signed up for Ingram Spark account. Yes, yes, yes. Rin even made a care package for me with a bunch of files for, you know, for Linux, you know, for Ubuntu and well, whatever. For latex files, which is what I would like to use and so forth. I'm working my way through the care package, getting it working on my thing. I've still got problems. That's currently on my desk to figure out. And, you know, Rin, thank you so much. It felt like, you know, the hardest part of the ramp is when you need a little help to get you the farthest, the quickest. Yay. Yeah. All right. Can we go back to our demo doing all right. Change is applied. We'll get out of this and we ought to be able to just type MFMS. Now, here's a trick. MFMS dash dash CPP demos. These are the ancient, ancient, look at all that. These are the ancient, ancient elements that were written. Oh, man, I don't know how many years ago, even before ULAM existed. We've managed to keep them still running. And, you know, we can run the procedural city generation demo right now. Boom, there we are. That, you know, is one of the more popular videos over on the Dave Ackley channel because, you know, it's quite a bit of fun to watch. Won't take any more time now. ULAM five packages are available. All of this stuff has been pushed to master for GitHub folks. Finally, I am sorry it took so long. All right, let's stop the city here. All right, so in other news, you know, I have so many things that seem like they're sort of separate branches, but in my mind, they all come together and I'm hoping they will all come together while I'm still able to explain why they do fit together. But there's the Hyperspace Academy series of lectures over on the Dave Ackley channel of which the most recent one, We Are Coders, is beginning to put out what I think is a kind of compelling, if you're a nerd, philosophy of life sort of where the idea is a large part of it. It's about code design. It's about API and program design. It's not about like what is true. It's not about what the neurons force on you or physics force on you. It's about choices. It's about what architectural design. How do you want to organize your programs, your hardware, software system to do good things? And the suggestion is, is that organizing it around the fact that number one, first up, We Are Coders is a useful, productive way that unfolds in an effective way and can unfold in an effective way. And part of that is this idea of the self image that came out. I talked about it right. So we can view ourselves. We can view programmable machinery as being consisting of four processes, input, sequence, judge and output. And that's what the We Are Coders video over on the Dave Ackley channel was about. I had these symbols for each one, input, arrow in, output, arrow out, sequence, arrow going around in the same place and judge being good or bad, up or down, that sort of thing. And those four symbols, I smushed together into the self symbol. You know, there's the input, there's the output over there. Here's the sequence up here and there's the judge, good and bad. And, you know, I've made little printed versions. We've got, you know, wine charms, these things. But the fantasy is the Hyperspace Academy uses the self symbol all over the place. It's a shorthand for a computer architecture, a programmable architecture. Not that, again, is right or wrong, but one that we can choose. We can say, I'm going to look at things as being organized in terms of input, output, sequence and judgements. And they can control each other in different kinds of ways. And we get all kinds of different machinery by how each of those processes impacts the other ones. And so I wanted to get it in as many ways as possible. I always kind of fantasized about having sort of like an ancient, you know, Inka or Stonehenge stone version of the thing. And, you know, again, the introductions channel, which Andrew, I think, made on the Discord a week or two ago, has been really great and lots of people have introduced themselves. And it's been really interesting to see it. And so the Scoundrel M showed up and said, you know, they're an amateur computer graphics artist and, you know, they know about Blender and so forth. And I have gotten destroyed by Blender. So I started talking to the Scoundrel M and look at this. This is, you know, a work in progress, a first cut of a, you know, stone monolith of the self symbol. And, you know, this is also now on my on my desk to find some reference stones and stuff like that, that to keep working on it. But already, you know, thank you, the Scoundrel M, and thank you, everybody who participates in the Discord or, you know, participating in any way, it really, really helps me. Now, research and development, what we saw in the opening video, low density mobile grid, LDMG, that's my new thing. And so just to back up to introduce it for a minute. So, you know, in the 12 steps to robust, one of the steps is like step number three, I mean, it's really basic. Build bottom up has been echoing in my mind a lot. And the, you know, when I would design, like when I was designing the plates, I was filling space with plate, solid plate, and the plate could overwrite other plate and so forth. But it was hogging everything. And the build bottom up notion was, well, one of them was, what if it's about leaving empty space? What if it's about not being committed and saying, yeah, I don't care. I mean, I need these things and I will deal with these things. And I won't even look at the rest of the space. And that makes it a lower order problem. And it makes everybody else that has to deal with it can know that. And say, you know, as long as I can definitely zip in and hear and avoid the things that it cares about, I know it will work. Now, what if it's about empty space? And that led me to the idea of this hard cell that, you know, we've seen over the last two updates, the sort of blobby membrane gas cloud slash soft cell versions. What if I said, you know, and I really didn't like that. But once again, this is the same move. What if we wanted to focus on building a grid that number one can move and number two, it's as low density as possible. It leaves as much empty for other purposes as it can. And I got to hard cell three. So, you know, here is the event window. The guy that's having the event is always in the middle. He thinks he's the center of the universe. And he can look out to distance four all the way around. And so the idea of hard cell three is that we're going to have another. We're going to have a hard cell three. It distance three in each of the four directions. And we're just going to keep tiling space until we get to however big the overall grid wishes to be. And, you know, so if we if we do this, I mean, we could have said, put it out at distance four. But when I started working it all through, in particular, the needs of being mobile, distance three kind of seemed to be the sweet spot. And when you work it out, you think about it, OK, well, what that really means is in every three by three collection of sites, there's one hard cell three and the other eight sites are empty. One of nine occupied, eight of nine empty, 88.8 percent, almost 89 percent. So here's the advertising slogan for hard cell three. Hard cell three is 89 percent, nothing. And that's a good thing because it means it's 89 percent of your potential. 89 percent of, you know, memory unused in effect, processing power unused for whatever you want, where you can now count on having a grid around you. And that's what we saw in the open events. Now, how does the grid actually move? And this is another thing that really made me happy. And this is why hard cell three is what works good. And hard cell four would not do it, at least not this way. And the idea is, is that if we're supposed to go out three, we can look north, south, west and east of each of our neighbors. So we've got a little for, you know, across here, across here, across there. So what could happen is, is, you know, if one of them wants to, they're not going to send a packet. They're not going to send a message saying, I want to go north under the right circumstances, according to the hard cell three rules, they will just go north. And that will tell everybody else something. It's also a message and its emotion. And that's the key to this idea of stigmergy that we see in nature all over the place. The termite mounds, classic example, that the termite mounds, the termites, they just do what they do. And in addition to getting things done, it's also a signal to other termites at the exact same time, the exact same motion, no extra work. And that's what we do with hard cell three. So for example, if the way we can tell is each hard cell has a hop count so that we can have a root and then we have hop counts increasing away from the root. So if this guy has got hops three, this guy's got hops three, the one in the center who's having been hops four, this one's got hop five over there that's empty, then because these two have threes, that means they're upstream. So we're going to pay attention to them because this thing has hops bigger than the guy that's having been that means they're downstream. And so the idea is, oh, look at this, you know, this guy's in the center. This one has moved north relative to the three by three pitch. And over here, this guy has also moved north relative to the resting position. And that sends a stigmatic message to the guy in the middle that he'd like to go north as long as going north would not cause him to lose sight of any of his downstreams. Now, in this case, there's nobody over there, so there's no problem. In this case, even if he moves north, the downstream guy will still be able to see him. In fact, it will look just like we have here. He'll see them one step up so he can go ahead and move, and that's how it works. And finally, so all of these things move by moving in their little cross shaped neighborhoods around each of the four neighboring sites, plus the full four cross cell neighborhood around the center. That's because we don't we don't we move, you know, north, south, east, west, one square at a time. And that's what we saw, and that means there are these pockets, these 16 sites that the code never needs to look at. It can move, it can preserve itself without caring about those in the least. Now, the way the code is written in a couple of cases, it does scan through that stuff because that's because I really hadn't figured it all out quite at that point. But this, like this whole lot, you know, we could put messages in there, we could put storage in there, and that storage would then look to the grid and say, oh, I need to move to keep up as the grid moves. But then that's all it has to do. It doesn't have to worry about the bigger picture of motion or of coordinating space. So that's it did pretty well, considering we did a sort of busted live demo. So that's it for next time. Here are the goals. I want to announce the goal project, the T2 tile project goal for 2022. It's June, it's getting to be time. And, you know, the real point is, is that, you know, a two week cadence is, is, you know, enough to certainly keep me not slacking off for more than a day or two after each Tuesday update. And it's like, I got to get something going again. But we need a slightly longer scale thing as well. And so six months is something that seems about right. I have an idea what that's going to be, but I want to flesh it out a little bit, make it more specific. So that'll be next time. I also want to take these hard cells and, you know, let them bounce off each other, let them reproduce, let them evolve even, you know, who knows? We'll see how far we can get. And I want to take the learning that I got from RIN and get the IngramSpark account and start moving all down the road there so that I could do, you know, maybe publish a little test book and find out how much is going to cost me, even though I want to do a little bit more work on SearchQuiet Wake, if I'm going to go final before I actually push that out there and then have some more fun. It's been pretty good. Thank you so much for coming, whether you're here live or you're watching the other videos later. I hope to see you next time.