Tech Over Tea - Creator Of Odin Programming Language | GingerBill

Episode Date: May 29, 2026

Today we have the creator of the Odin programming language on the show, Gingerbill to talk about the creation of the language and eventually have some fun talking about his page being removed from Wik...ipedia.==========Support The Channel==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson==========Guest Links==========Twitter: https://x.com/TheGingerBillWebsite: https://www.gingerbill.org/Odin Lang Website: https://odin-lang.org/==========Support The Show==========► Patreon: https://www.patreon.com/brodierobertson► Paypal: https://www.paypal.me/BrodieRobertsonVideo► Amazon USA: https://amzn.to/3d5gykF► Other Methods: https://cointr.ee/brodierobertson=========Video Platforms==========🎥 YouTube: https://www.youtube.com/channel/UCBq5p-xOla8xhnrbhu8AIAg=========Audio Release=========🎵 RSS: https://anchor.fm/s/149fd51c/podcast/rss🎵 Apple Podcast:https://podcasts.apple.com/us/podcast/tech-over-tea/id1501727953🎵 Spotify: https://open.spotify.com/show/3IfFpfzlLo7OPsEnl4gbdM🎵 Google Podcast: https://www.google.com/podcasts?feed=aHR0cHM6Ly9hbmNob3IuZm0vcy8xNDlmZDUxYy9wb2RjYXN0L3Jzcw==🎵 Anchor: https://anchor.fm/tech-over-tea==========Social Media==========🎤 Discord:https://discord.gg/PkMRVn9🐦 Twitter: https://twitter.com/TechOverTeaShow📷 Instagram: https://www.instagram.com/techovertea/🌐 Mastodon:https://mastodon.social/web/accounts/1093345==========Credits==========🎨 Channel Art:All my art has was created by Supercozmanhttps://twitter.com/Supercozmanhttps://www.instagram.com/supercozman_draws/DISCLOSURE: Wherever possible I use referral links, which means if you click one of the links in this video or description and make a purchase we may receive a small commission or other compensation.

Transcript
Discussion (0)
Starting point is 00:00:00 Good morning, good day, and good evening. I'm as always your host, Brodie Robertson. And today, I didn't think about how I was going to do this intro. So, welcome, Ginger Bill, creator of things and the Odin language. I didn't think this one through very well, so we're just going to wing it. Introduce yourself further from that, and we'll go from there. Yeah, well, thank you very much. Yes, I'm Ginger Bill.
Starting point is 00:00:27 Thank you very much, Brody, for inviting me on to this potter. cast of yours. That's very fun. But yeah, I'm the, I'm Ginger Bill, the creator of Odin. I also work at Django Effects, which products such as Embergen, Lou Gen, Liquogen, and Geogen, which are all real-time simulation software for the game and film industry is the best way of describing it. And I guess half the reason why you got me on my show is mainly for the controversy around about the Odin Proa language and Wikipedia. Well, that was a good excuse to talk to you. I'd be interested to bring you on for a bit. Oh, that's wonderful, yeah. So I guess we didn't do anything.
Starting point is 00:01:02 This should get me on, wasn't it? Yeah, yeah. It's a good segue to do it at least, if nothing else. So I guess for anyone who might be completely unaware, it's probably a good place to start. What is Odin? Odin, it is a C alternative for modern high-performance systems languages. So it's a program language that does this, so... How do I put this?
Starting point is 00:01:26 Is anyone to ever use C or C-L-C-Bus Plus and you absolutely hate yourself when you're doing it? you're doing it. I would it might be for you. It might be the best way of describing it. So when you say C alternative, what are we actually meaning by this? Yeah, so C alternative is, in this particular case, means it is a C light language, so it has a very similar approach to programming. It's an imperative procedural language, which means you just write procedures or some people
Starting point is 00:01:56 say functions, but I'm just being old fashioned. And that's the case. That's the case. But in general, like, when I see a light, you've got manual memory management everywhere as well. So you allocate your things, you free stuff, your manually, all that a lot. You have control over the memory layout, how things are accessed, how things are just in general, that you have complete control that you can see with C. But because it's an alternative, like modern systems, it is more designed for modern computers. We're not pretending now that they're on a PDP 11, which is what C was originally developed for. Of course, it's evolved over the years.
Starting point is 00:02:29 And people still use C to this day. I still use C and C plus, obviously. But Oden is trying to be like, look, I've had frustrations with C, and I've started Oden, God, nearly 10 years ago now. I've got time flies. But yes, that's kind of what an alternative means in this case. So what are some of those frustrations? Why would somebody want to use a language like Oden?
Starting point is 00:02:55 Or, you know, whether you want to talk about the other languages that are out there as well that are in a similar sort of vein as well. What are those issues and frustrations with C? A lot of it's just, a lot of the very little amount of things. So C in general is a very productive language. It is surprisingly a smallish language. I'm saying smallish for a reason, because actual C, yeah, small,
Starting point is 00:03:21 but C on the actual compilers is actually quite big because you've got all the extensions, all the extra things on top of it. But it is a very productive language which does so much. And you can get by doing anything. in it. Literally you can program anything in it from an operating system to a game to a graphical application to a web browser. Like literally anything you want you can do in those
Starting point is 00:03:39 languages because it is that it's low level enough that if you've got control over memory but it is a high level language as in I'm not writing assembly. Right. Now, why would I sort of make that mistake when they talk about, when they talk about C, they're like, oh, C is a low level language like, no, no, no, no, no. C abstracts away really far
Starting point is 00:03:58 from that machine code. Yes, yes, you can write it and yes, it is lower level than a language like Python, for example. So it kind of depends on your reference point. But everything that is not assembly is a high level language, pretty much. Yeah, pretty much. And a lot of people may not find that also a bit confusing. Like, how is C a high level? I have to do with memory manually.
Starting point is 00:04:24 And it's like, you'd be surprised how little you actually sometimes have to. If you actually design the APIs and libraries correctly and all the nice ones, it can be very high level. That's the actual surprising thing I always found before even started Odin. I was trying to figure out how to make my C experience even better. And my realization was that a lot of these high-level scripting languages like Python, as you explain, they just come with batteries included. And everything is there already.
Starting point is 00:04:54 And with C, nothing comes batteries included, really. and the C standard library is dreadful, and you pretty much want to replace it straight away. But again, that's one of the gripes, right, is the C standard library is dreadful. But again, that's just a library thing. What about the actual language itself? But a great example of this is that,
Starting point is 00:05:12 let's take some minor things. Like C doesn't actually have a proper array type in it. And what I mean by that is all ray types get demoted to a pointer. Which means you've doing a pointer arithmetic all the time. You've got arrays with no body. Bounds checking, which means you've now got out of bounds errors. Anything that's like this called spatial memory safety is gone out of the window.
Starting point is 00:05:36 There's this, again, this overload now. A pointer could be also in a race. There's this separation, merging of concepts. The type system has got many different, like, implicit conversions all the time because Oden, not Odom, C is a very weakly type language. So there's loads of implicit conversions going on, which can and will bite you in the house. So it is but it's just loads of
Starting point is 00:05:57 little things as you go through with the language that they just start to annoy you and anyone who has a long term experience with C but also had experience with the languages will know those problems and with Odeon the whole point was I'll try okay can I try and solve that problem that problem that problem and go literally systematically
Starting point is 00:06:13 throughout it and like how do I redesign to sort get around these problems whilst still feeling like C not being directly different like save something like rust Rust is trying to solve other sets of problems like for instance temporal memory safety as well as spatial and do it through other means
Starting point is 00:06:30 but it doesn't feel like C when you program in Rust because Rust isn't trying to be that which is fine that is absolutely fine it's just not trying to do that So a lot of one thing that often come up when we talk about anything involving C and I'm sure a lot of these people don't actually write a lot of code
Starting point is 00:06:50 in their entire life they don't they've never written C in their entire life but they'll say things like oh, well, these aren't problems with C. That's just a skill issue on your part. Yes and no. So there are skill issues, obviously, when it comes to anything within programming in general, but there are things where it's like, yeah, the language,
Starting point is 00:07:14 the language hasn't got enough protections in it, which you'll catch your mistakes. And by the way, you'll make mistakes no matter how skilled you are. Because mistakes can come from anywhere. They can even come from dodgy APIs, dodgy libraries, is even your past self, who might have been, I don't know, intoxicated at one time
Starting point is 00:07:31 and you've just done something wrong. But I think this is half the problem is that I'm not, but I'm also not saying that you need a full-on safety net when you're doing with C because a lot of time you actually want that control and that one safety,
Starting point is 00:07:42 that is kind of how the thing, it's the thing you're doing, is that unsafetyness. That's correct English, obviously. Yeah, yeah. But, um, on safetyness. I'm making up new words now.
Starting point is 00:07:53 Oh, they'll work it out. Sorry for people who English is not your first language. But this is kind of thing. So there are some issues with skill issues because if you're not used to doing that sort of programming, you'll expect more high-level constructs. Like, why can't I just allocate an array on the fly and do all this magical manipulations with all these hash maps and stuff?
Starting point is 00:08:13 And it's like, yes, he hasn't got any of that. And that can be a frustration. And I completely understand it. But at the same time, it's not... When you deal with C and I recommend anybody, if you are a programmer to learn C, even if you don't use it as a day job or anything like that, just to learn that style of programming.
Starting point is 00:08:32 Again, there's loads of different languages to learn, but C is a great way of learning that sort of style of programming. You are, you're going to start thinking differently. It's the best way of strength. Thinking about how you solve a problem differently. Also, thinking about actually, how do these operating systems work? Because they're all written in C or C plus plus for the most part. So it's kind of very useful to understand that.
Starting point is 00:08:54 And also it kind of forces you to understand how data structure work as well directly. Yeah, I think there is this, there is this desire in programming, especially now with AI tooling being a thing, to produce a thing really quickly, to produce a website, to produce an application,
Starting point is 00:09:15 and sort of jump over those initial steps of, like that foundational computer science, where you really start to understand just how do things fit together? Like even just basic things. Like, if I'm going to use a hash map, what is a hash map? Like, not just, oh, I can put a key in here. There's a valid.
Starting point is 00:09:36 Like, how does that actually work? Yeah. And it's something which is going to be a problem with AI in general is that the people already know these skills and the ones that also use AI, they're going to be fine because they already know the foundational stuff. But if you're a new programmer and you're skipping straight to the AI stuff in general, Oh goodness, you're not going to know how to architect anything. You're not going to understand how things work.
Starting point is 00:10:01 And when things go wrong, you're just going to be asking the LLM like, can you fix this please? Make no mistakes. Right. It doesn't really work. And again, I've still even used,
Starting point is 00:10:13 I try using LLMs from time to time. Look, I'll always try out something, knows, see how it works, once a philosopher and all. But it's... But sometimes it's like, I know it makes mistakes. I know exactly where it's gone wrong.
Starting point is 00:10:27 but I know why you have to do this. They're never going to be perfect, but they're going to be better than nothing sometimes for some people. Some people are also like they're not interested in whatsoever. But again, if you don't have those foundations how they work, you're never going to actually become a very good programmer. And there's always going to be a complete, literally cap on your skill. And I recommend people learning, again,
Starting point is 00:10:48 as many different ways of thinking with different languages, but one of these especially see. I think there's also a value in sort of taking on interesting basic forms of complex projects. So one idea often here is like a way to learn a language is writing a basic HTTP server, right? It's not something you're ever going to use in production most likely. You're never going to deploy it.
Starting point is 00:11:14 But it gives you an understanding of how do these messages get transferred around? Like what is, what is that actually doing? And even though, even though you're not going to use, user, you have a better understanding of how that fits together. When you know how that fits together, that can give you a better understanding of how other similar sorts of things might fit together as well. Yeah. Again, HTTP 1.1 server is a great example of this because you'll learn how to use sockets, for example, learn about what TCP is. You'll learn about how to richly read the header, how to do the basic text passing within that header as well. There's a lot of skills you actually have to do there.
Starting point is 00:11:53 And that's just reading as a client and then learning how to do that as a server, is it even going to be more fun. And there's a lot of fundamentals which, once you understand those fundamentals, it's not magical anymore. And you can also just piece things to get it better. And you go, oh, this is how this works. Oh, I could do this. I know how to, this now works here. And you learn more transferable skills as well. Because that's also another thing is if you, you're asking LLM to do things, you may not even know how to ask it the right question. Right. And that's an actual real skill as well. It's even, regardless of not even LLM, if you don't know how to ask, ask the right question, for the problem you've got because you don't know enough of your skill set.
Starting point is 00:12:31 Well, you're screwed. Well, it kind of puts you into the position. Have you seen that? I had that picture of like, this is what the client described. This is what the engineer thought they made. Or thought they wanted. This is what the DevOps person that they wanted. And then at the end is like, this is what the client actually wanted.
Starting point is 00:12:48 When you're communicating with an LLM, you're effectively in that position of the client trying to explain what you actually want to build. trying to interpret, and there's a skill to that as well, right? I think there is value in being able to break down and explain a problem, but I think that is a different skill from generally being able to engineer a solution. Well, yeah, because, again, engineering is a skill in itself. And even asking those right questions, for instance, if you've got a client that's there, I want you made this piece of software,
Starting point is 00:13:25 please. And you just keep asking those questions. So what do you mean by this? Because most people aren't very good at communicating what's in their minds. Yeah, yeah. Telling you in that. Because they've got, you know what it means. Just say this.
Starting point is 00:13:36 And like, yeah, but what do you mean by that word? And just keep breaking it down and breaking it down and breaking it down. And then sometimes you're like, okay, I've got this prototype and you show them. And you go, that's not what I wanted. It's like, okay, so what did you want? And you explain. They go, oh, you mean this. So it's this repetitive, repeating process that you've got.
Starting point is 00:13:51 And you've got to do back and forth with what the purpose of what the person wanted, even if that person's you, by the way, because I'm not. you have to do this back and forth conversation with yourself. Or if it's just literally like, okay, understanding what does this person think? How do I engineer this? Is it even possible? How much time is it can take? You've got all this.
Starting point is 00:14:06 And it's a proper problem solving task. For most programming stuff, it's not really engineering for most people. But for some people, it really is a proper engineering job when you're actually dealing with systems level programming and going, oh, okay, I've got to think about how to optimize this, deal with this, how does it interact with this system do this? It's, oh, my goodness. And you've got to worry about how this all again, it's going to be architecting. and engineered together.
Starting point is 00:14:29 And this is before even the skill of LLMs, and even with LMs, ELMs, I'm going to help you with that because they can't really help with you yet, at least now yet, at least in the current iteration this year of 2026. Yeah, who knows, look, who knows where we'll be in like three years,
Starting point is 00:14:50 five years from now? You can make any sort of prediction. You're going to be wrong. I'm not going to try to. I'm just saying at the moment Yeah, pretty much that's the safest bet to make So, I doubt it because there's other things
Starting point is 00:15:05 But it's just not getting to that discussion That's probably a little bit too philosophical at that point Sure, like what is it mean to Think like a human Like what is there something special About human thought, creativity It's not even that It's just, oh, it's not even that I was going to get into
Starting point is 00:15:22 But sure, just more of a lot of people going to be autistic and a lot of programs are autistic and they're going to be just talking with another autistic machine so it's going to be like you've got communication barrier that's you know what fair point actually um so jumping back of it when we're talking about um issues with c uh we kind of got sidetracked i'm sure it's going to have it a bunch of times um that's be fine how does odin go about trying to resolve some of these issues with c i assume it has a more complete
Starting point is 00:15:54 standard library but what like what exactly does the language do? It's loads of little things all put together this is the thing this is actually
Starting point is 00:16:04 one of the big issues I've had been marketing Odin is in general there is no one killer feature it's just literally an improvement by a thousand little things and it's gone step by step how to improve those
Starting point is 00:16:15 for what someone and also try and still feel like see weirdly enough what I kind of when I started Odin is I didn't have a start with like something exactly like to see and then try and prove that. I kind of started from Pascal.
Starting point is 00:16:28 Okay. Okay. Which sounds confusing to people. Like, what do you mean? I might think things, but you don't see beginning and end anywhere nowadays. It's just color races. But when many people see Odin, they may go, well, looks very similar to go. And the go-heel, yeah, looks a bit as got like I go.
Starting point is 00:16:41 Well, part of that reason is goy is actually a Pascal as well in disguise. And it's not surprised because one of the main designers is Robert Grisma. Robert Grismer's PhD supervisor was Nicol. Lazavit, the creator of Pascal. So you can see the lineage of all those ideas there. You've got Rob Pike has also been dealing with those sort of people. You've got Ken Thompson. So it's kind of like, look, they've got kind of a Pascal style foundation,
Starting point is 00:17:04 plus trying to make it still feel like. And that's kind of what I've done with Odin. But within Odin, we've gone even further and gone like, okay, well, this is the stuff we do in C. Can we try and map this in a better way and deal with those specific problems? And a lot of also the design that I've come about is also trying to think like, okay, what are the problems that people actually have? Can we then try and solve those specific problems?
Starting point is 00:17:28 Rather than trying to think of a generalized one, like, okay, here's one kind of feature in a language, which could solve multiple than, not very great, but multiple, but Odin's more like, right, is that a common problem, right? Give that a good solution. That common problem? Yep, give that a good solution. And then see if there is an overlap,
Starting point is 00:17:43 but if not, just keep them separate. So Odin's design is very, in that sense, conservative. It is not trying to be come up with new ideas. is trying to say, look, we've got known problems with known solutions, know things how actually really work, and then try and make all of that coherent, cohesive, and consistent within the language itself. So, again, nothing in Odin is that flashy in the slightest.
Starting point is 00:18:04 And I think the newest ideas in there probably come from, like, 20 years ago. I know you put out a blog post like two years ago on marketing the Odin language. And I can see what you mean there, right? Like, there are these languages. First one that comes to mind is something, like V, for example, where... Yes.
Starting point is 00:18:24 There's this specific thing it is marketed for. And the problem with marketing a feature is that... For the people that want to be critical of the language, that is kind of the stick to beat it with, right? And this comes up a lot with Rust when people talk, you know... Even though Memory Safety is not like... For anyone... Memory Safety is not a unique thing to Rust, at all. Not even remotely.
Starting point is 00:18:50 But because it is... something that often gets talked about around Rust, it's something directly mentioned on like the Rust website, when anything is not the definition the person looking at the project has for that feature, that's immediately a point to criticize it on. Oh yeah. And again, taking Rust as an example, Rust, I won't say it's unique, I always call it say the word novel, right? its approach to memory safety Oh sure, it's approach. Yeah, no, yeah, absolutely.
Starting point is 00:19:22 Its approach is a compile time approach to memory safety, rather than most languages use like garbage collection and such. This is now doing it compile time. So it has both spatial, which is like out of bounds and stuff, temporal, which is then clearly over time,
Starting point is 00:19:39 different types of memory safety. And then it can prove that at compile time. That's kind of the aspect of us. And not just that, it's also a compiled language. So people like Rust for that particular purpose. And if you need that kind of thing, then Rust is probably a very good language. I want to say it's great,
Starting point is 00:19:55 because I have many other gripes about Rust. But that general idea, good. But now my thing I'm going to annoy a lot of Rust programmers with is most people don't need that level of memory safety at all for most of their programs. So if you don't actually need it, maybe some of the language is a better option for you. It could be Odin.
Starting point is 00:20:13 Could be any other language. I don't particularly care. Whatever your problem is, that's the language you should try and find, find the language that's right for your problem set. Mm-hmm. You know, that right there is a really important point. People get really defensive about languages and they want to turn it into like this,
Starting point is 00:20:27 this team match thing. And I kind of get it when you're talking about languages which serve a very similar function. But at the end of the day, right, like, at the end of the day, they're all sure and complete languages. You're going to work out the problem in them anyway. Yes. some of them might be better at certain different things. But at that point, just test them.
Starting point is 00:20:52 Like, do a small case, see what it's like. It may not even necessarily be the performance of the language. See which one you just feel more comfortable writing. Like, what feels better to you? Yeah, I always recommend that to people. I always say, like, oh, why should I use it? I'm like, well, give it a go for a little while to see if it meets your needs. If not, try some other languages out,
Starting point is 00:21:15 because you may actually find out that, oh, I've tried Odin, didn't like it, but then I tried the others and went, actually, I didn't like them even more. So, or it might be the other way around. Or it might be literally, you loved Odin and it's great. But I think for a lot of people is, when I say try something smaller, I mean, you could probably probably try a language, try and make a little project in it for over a week. Don't just try it for a couple hours. Because sometimes it just takes a while to get into that groove of freaking hell like, oh, do I like this or do I not? And but if there are languages out there that are in your niche, whatever, it's like,
Starting point is 00:21:47 if you're looking at, I can't say my age now, but Python, Ruby, like, okay, they, I don't like, it's fine, you know what I mean? Like, they're just like, they were, they're always back in the day like 20 years ago. I'm not that old actually, by the way, but it's just I remember when I first started programming, this, I remember seeing all the stuff. And they were like similar niches because you can make website backends with them, and they're both scripting languages and very object-oriented. And it's like, well, just choose one and see if you like it and try the other one and see
Starting point is 00:22:10 if you like it. And then there you go, problem solved. It's not a religion for goodness sake. But many people read it like one. And please don't. I think it's because of how much investment it takes to, especially learning your first language, right? Once you've learnt one,
Starting point is 00:22:30 learning additional ones after that is, unless it's some weird... I'm talking about Haskell programmers. Unless it's something like Haskell, something fundamentally different from a model you already know, No, for the most part, it's a pretty easy thing to jump between language and language. Syntax might be weird. Yeah, it might be weird. Sure, absolutely. But the fundamental programming concept, and this goes back to what we were saying before,
Starting point is 00:22:57 this is why it's important to understand how things work, because when you understand those lower-level concepts, you can apply those ideas to any other language with relative ease. Yeah. But again, it's as you're saying, like, if you know one imperative language, like an imperative procedural language, you can kind of understand the way of thinking in that other language, not fully, because to master any language, like, okay, I'll put this, Dutch and German may be very similar languages, but they're not actually the same language. So it's very much like you have to kind of like, okay, how does it work in this language? Right, right. But again, as you're saying, something like Haskell, it's a very good example of language, which you have to think differently with it.
Starting point is 00:23:43 Now, I wouldn't necessarily recommend that one myself, but maybe something like, I don't know, I'm trying to think, O Camel might be a good example for someone to try something of that realm, like an ML language, and that's a way you can just think of a different way of thinking. And you may learn, again, different ways of thinking that you can actually apply to other languages,
Starting point is 00:24:01 and you may even prefer that stuff. Yeah, I recommend people trying different styles, different languages. Like, again, try to say, try something like O'Camel, try something like, again, an SQL language, try something like, I know an APL of some sort. There's so many different things away, but again, once you do different ways, you actually start thinking differently about how a problem solve fundamentally. But yeah, as you say, if it's within the same area, you can, I'm not saying you can easily go between the different languages, but you get the general gist and you can probably learn it quicker. Yeah, you're not going to like immediate, especially, you know, we talked about Rust a few times.
Starting point is 00:24:34 the Rust memory model is going to throw you. There is going to be basic data structures which do not work like you would expect them to because of the Rust memory model. That is just the way the language works. But outside of that. But outside of that. But even then, the thing about Rust is
Starting point is 00:24:57 it's technically an ML in disguise anyway, but it's a... But it is. It's just meant to look like a C++ language but it's ML semantics quite everywhere which for better or for worse again your preference sure there's no like perfect language out there
Starting point is 00:25:11 guys so when Oden got when did Oden get started firstly July of 2016 okay it started just a hobby project wasn't really serious
Starting point is 00:25:26 but yeah nearly 10 years ago now as the Tyra recording okay Well, why did it get started? What initial problem was it trying to resolve? Were you just bored and wanted to make a language? Right. I'll kind of start from the beginning.
Starting point is 00:25:47 So before even started in language, in 2015, I kind of gave myself New Year's resolution for 2026 to see what I actually wanted from a language because I was just, again, I did loads of projects, hobby project was working in C-Bus Plus. I think I had a job at the time was doing also C-Bus Plus stuff. And I just kind of got really frustrating. with it. So one of the new year's resolutions I had was just start with C and just use C for my new
Starting point is 00:26:08 projects, like hobbyist stuff, and see what I wanted. And very quickly, I realized I didn't need much. Like, I didn't actually need many features. I could get on with quite a lot. But then I eventually started like, okay, so C's still a little bit restricting. So I kind of made like, I need to make my own core library, like my own standard library for it, which released the Gb.h.H. header files, which I like released in the public domain. I know many people have now. taking that code in their own libraries because he was public domain so I've seen my code in random code base and go I wrote that um but that was one thing and then eventually I said look c's not enough so I eventually kind of made my own C compiler to add some extra features to it so I
Starting point is 00:26:49 added slices which are like array a pointer plus the lengths with array so I've got bounce checking I added a defer statement to the language and then eventually I started realizing like I can't improve C like C has got the foundations are so broken so broken, like so broken, I'm gonna have to start my own language. So I got drunk one night after the pub and came on and started streaming on Twitch and started making a language. And yeah, the arrogance of when you get drunk. Now, Odin's not my first language, but, and it's not even my last either.
Starting point is 00:27:21 I've done many other languages after this now, even small ones or teaching ones and stuff like that. But yeah, it was a, yeah, that's kind of how it started. But then it just, I kept after about a couple of months. I went, actually, this might be a decent language. And I think within about five months, I had, like, most of Odin fleshed out. It's just taking this next to ten years to get the polish. And Odin is effectively done now.
Starting point is 00:27:48 It's just we haven't officially released 1.0. We're just still polishing things out, making sure things are there, and then eventually we'll announce it, which won't be far off, I don't think, actually. But, yeah. Well, I guess what would... 1.0b like what is I've played around a little bit with it but like what
Starting point is 00:28:09 what do you want things to be out what kind of polish do you want to be there what is missing or is it just like little bugs here? With the language itself the language itself is effectively done there's probably one or two might I say features they're not even features it's one or two things that I need to just add
Starting point is 00:28:27 just to round it all off one point home I would have loved to have in line assembly as well well as a feature in there, but I don't think it's necessary for 1.0. It could be for 1.1, that's fine. So the language itself effectively is already 1.0. However, for many people when they conceptualize a language, it's not just the language. They're thinking about the core library, they're thinking about the compiler, thinking about the entire ecosystem.
Starting point is 00:28:52 And there's a few packages that we want to have to be fully bacteria is included. So one of the things we haven't got yet, but we will, so hopefully soon, is a full-on HTTP package. to make HB servers and clients and such like that. Also with native cryptography as well, because we've got someone who is an world expert kind of implementing all that now, and it would just be native in Odin. If not, we could always use a non-native one if you want,
Starting point is 00:29:16 you can just use whatever, but it'll be in Odin. We would also probably want some other libraries here and there, maybe a UI library as well. But in general, it's just we want this batteries-included thing because we want this ability that you can just download the language and you can just go make things. Which is sounds like, oh, that's, that's, I can do that in any language.
Starting point is 00:29:35 I'm like, yes and no. A lot of the time you just have to now download third party things. You have to go through a package manager, which I've written an article on that, where I think package managers are evil. I won't cover that topic again. But they are one of those things which I do think they lead to more problems than they're ever actually worth. Again, I don't dislike packages, as you probably can tell. Just package managers are a very specific thing.
Starting point is 00:30:02 And if people read that, just read that article if you'd like. But yeah, it's just that. So 1.0 for me is like language, yeah, we're pretty much there. Call library, we're not far off. The compiler, we're not far off either. It's just, it's literally that spit polish. We need to get there. That's all it is.
Starting point is 00:30:21 Okay. You know, I actually am kind of curious about the package managers thing. I am kind of curious about that. well um to explain it so i was on the primogen stream this is going back now what two years nearly 18 months two years and i was with the creator of elixir hose and we were just kind of talking about this and then i got to one topic and i was kind of uh the primogen was like oh i've heard about your views on package managers i went okay i'll just start and i went right package managers for programming languages are evil and i just kind of went to display and i kind of clarified what
Starting point is 00:30:58 I was doing what I was trying to explain what package managers are as well. And the sort like literally the short answer for all of it is a package manager automates dependency hell. And the problem is not everything needs to be automated, especially hell. Okay. And that's my general criticism, unnecessary automation. Now I know many people say, but I need it for this X, Y and Z. How do you do things without a package manager?
Starting point is 00:31:26 And my general answer is, is that you just do things manually. because if you do things manually, it doesn't prevent you from going to hell, it just slows you down and you actually start to see what you're depending on and literally seeing how things work because you're... When you just mindlessly download thing and it has a thousand different pendants and another thousand on top of that... NPM. Do you actually know how any of that code works?
Starting point is 00:31:48 There's no vetting. There's no vendering going on. It's all just madness. And you can get to situations like the left pad situation. I was just about to bring that up, yes. Yeah, like people depend on something like that and now it's not there. So then eventually, literally JavaScript, the ECMA script, I should say, had to actually add that as part of the language.
Starting point is 00:32:06 But then you get the security violations. So like when literally when I did the primary-genre thing, a bit later I wrote up the article, literally pretty much word for word what was said in there and then just wrote it up. And two hours after I published a thing, there was a massive NPM security thing because people depending on this compromised thing
Starting point is 00:32:26 and people automatically update their things And just everywhere's gone wrong because you automated hell. And you've made security leaks. And people wouldn't have done that. And I'm like, but people do this anyway. So you have all this thing. Again, this is this idea of ideas how I have to think it through. It's the same thing when I'm doing language design though, man.
Starting point is 00:32:41 It is literally just thinking, how do people actually do use things and how do they think about it? Okay. So deal with that. That's human nature. You're not going to change human nature. You've just got to figure out how to navigate it. And again, Packaging managers, programmer languages, all of these kind of. of things are no different.
Starting point is 00:33:00 So basically you think the idea of hacker managers sort of facilitates the creation of this ecosystem where things depend on things that depend on things that depend on things, effectively. And this, like the worst, you know, it's not as bad with something like a Python, for example, but NPM is the worst case example where you will download what you think is, one package and then it has
Starting point is 00:33:30 you know a hundred dependencies now I think there is a place for package managers as like a third party thing for example I do think there is value in having them on like you know a Linux desktop right where people are not building that obviously they're building under the assumption the package managers exist
Starting point is 00:33:52 but I don't think that necessarily creates as bad of an issue issue. And I, maybe, maybe you disagree with me here. You think there was so much value in having. I was trying to focus it on programming languages specifically. Sure, sure. Okay. When you get package managers for an operating system, like your favorite Linux distro, I think use Arch, don't you? By the way, Brody, right? If I'm correctly. Yeah, yeah. So, um, and so there's different package managers out there, obviously. So there's different ones to choose from. And they are useful. But there's also this aspect where, like, I've used, um, like a Windows machine and a Mac for years. I've literally, I can remember, like, I've been using a computer since I was like three years old.
Starting point is 00:34:32 And I never used a package manager until I got to Linux. Well, on Windows, you do have them. They're built into the Windows. But I was on Windows. I was on Windows. I was on Mac. But when I needed software, I just downloaded it or installed it. And it just worked.
Starting point is 00:34:47 And when you get to Linux, it's a bit a bit complicated. So people say, yeah, that's great. But Linux is a different thing. It's like, yeah, you're right. It's different. It's open. It's very much people like to literally download things that way. And just they treat this package manager as their,
Starting point is 00:34:58 effectively their search engine and download things. But it's also one of those things where the package manager allows you to update things. It's a bit more automated compared to say the Mac or the Windows thing, which may have to be very manual, unless it's like an Apple specific Mac, Apple specific thing. You'll have its own package manager built into the operating system. Yeah, yeah, yeah, absolutely. It is the update of the software.
Starting point is 00:35:18 But, and then eventually have the Mac store as well afterwards. I'm just talking before that because they are software updates. Okay, yeah, yeah. But this is where it's like, okay, that's what package managers do. But also each one of those things that you installed, there were just one thing. They didn't have anything else dependent on them. The operating system was its only dependency. So you have this question of what are you actually trying to automate?
Starting point is 00:35:41 And is that a good thing or not? And I don't, I'm not saying there is a yes or no to that answer. It's just, it's, I don't think a lot of people, a lot of people don't even think of it that far. they actually are very blindly trusting of strangers when they really shouldn't be. Okay, no, that's definitely fair. No, I see we are coming from there. Yeah.
Starting point is 00:36:06 Kind of talk to over each other for a bit there. One thing I will say is, obviously, each individual application in Windows is effectively its own package manager. Like when the wizards, obviously are installing dependencies in the background. But they... The difference you're saying there is
Starting point is 00:36:22 there's not an overall system that is managing all of those individual applications. It is each in, if you want to install, I don't know, crystal disc mark, I don't know, first thing came to mind. You've got to specifically download that. I guess now
Starting point is 00:36:39 nowadays obviously things like chocolate they do exist. So it's bringing in something. Because whilst you might have issues with them, people do find them convenient and people do kind of want them to an extent. And this is why you have application stores as well?
Starting point is 00:36:55 Yeah. I think application stores are a slightly different thing normally as well. And because they are only dealing with applications in that regard, right? Right. Usually, if it's like the app store, they're usually semi-vetted. I'm being very careful here because they're not fully. But they usually a little bit more, it's a repo. We can search and download things and it has an update manager to you,
Starting point is 00:37:17 which is kind of what a package manager is. Now, I know a lot of people say they love it and it's very useful for them, But I also go to you, I'm like, again, it's this question is, is it automating a thing that's necessary? And my answer to that is probably not. As surprising that sounds to people, especially since how difficult is to go manually down something. Even if it's like, if you're on Linux, like just doing W-Get, I know that's like, it's the same thing. I'm not saying you have to go on a web browser and download it. Sure.
Starting point is 00:37:43 But it's this way you get into different situations. it's a very subtle of the discussion this is the problem there's little things here and there's a lot of nuance to unfortunately and this is the problem when you talk with like see people randomly on the internet they strip out all new ones and it's like oh for the sake thank you especially with YouTube comments and all that's they're my favourite obviously oh yeah I love them no nothing nothing ever goes wrong in the YouTube comments nothing nothing ever I've always had most productive comments I've ever had in the
Starting point is 00:38:18 YouTube comments. I don't be a facet. Just probably blue down. There was a, oh my God. Can I find it? There was a, this is not YouTube comments. This is on Twitter.
Starting point is 00:38:30 I was talking about the Steam controller yesterday. Unless they deleted the comment. Did they? Did they realize that was stupid? Oh, yeah. So I made a comment about like gyro controls. I was like, I don't personally use gyro controls. Someone replied to this.
Starting point is 00:38:48 that with what causes Linux users to smugly demonize disabled people, needing something they have absolutely zero experience, knowledge, or context about. I just said I don't use gyro controls. I didn't say you shouldn't use them. I didn't say they're bad. I just said I didn't use them. You know, that's the pancake waffle thing, right? That's, you know, the meme about pancake waffles, right?
Starting point is 00:39:07 Which is literally like, well, I like pancakes. And they go, what do you mean? You don't like waffles? And I meant, that's just a complete different sentence. But it's like the same with that you're saying you don't use, like, I use the steam controller. I absolutely love the original steam controller and I love the gyro on that's up there.
Starting point is 00:39:21 One of the reasons why is that if you're doing like something literally a game that was developed for a mouse originally, I can use that and actually literally have it as accurate as a mouse, even not better in many cases, especially like an FBS or a third person shooter and such. And it's wonderful those sort of things. It is literally I can get the general gist and then use the gyro to properly get the high precision that I need.
Starting point is 00:39:41 And no other the controller I've found is ever able to do that as accurately. And I know with a new steam controller, they're actually even like capacitive hand grips which allow you to do the gyro control as well not just touching the sticks they can also do it on the grip so it's like they really are going like this and I've seen people say they just don't understand
Starting point is 00:39:59 the point of the gyro why don't it just get rid of it which is different to what you're saying you just don't use it yeah so it's just so these levels of people extrapolate because they say oh you don't like gyro well you're a bad person
Starting point is 00:40:08 because I like it or you don't think about these it's like it is literally it's the internet for you right people just lack they just skipped to the conclusion that they thought what you've said and it's not what you've said. Pretty much. Yeah. Right. Yeah. Yeah.
Starting point is 00:40:25 You know, I've been, look, I've been on the internet for a long time now, probably longer than I should have been. I was probably on the internet earlier than I should have been. Like most people. Yeah. Yeah. Yeah, the internet's like this. I've grown up on the internet literally, so that's not great. Yeah. Thank you, Dad.
Starting point is 00:40:44 because my dad was on the internet before the World Wide Web as well. So he's, yeah, he interested in the actual internet very early on. Thanks, Dad. Thankfully, early on my, you know, I didn't get on the internet until, like, I was, well, I'm a bit younger than you are. So I was, I got on maybe like, I'm 31 now, so. Yeah, okay, you're a few years older than me then. Yeah, just a couple.
Starting point is 00:41:08 Yeah. I'm 28 now. Yeah. But I lived in a rural area initially and rural, Australia just didn't have good internet my parents also came from a farming background
Starting point is 00:41:22 they didn't care about computers on internet so I didn't get a I didn't have a home computer until I was like eight or so and by then YouTube was coming out but everybody else like you know Australia used to have garbage internet nowadays you can go fire but back then
Starting point is 00:41:38 whilst the US was already starting to talk about like 25 down 30 down maybe 50. We were still on like maybe one. So that's sort of limited. As content was being made for higher and higher internet speeds, it kind of limited what you could do. Oh yeah. I can remember I was still on dial-up until, when did we go off dial-up? When I was about, say 20 years ago, right? So I'd have been 11. We were still on dial-up. So I remember that being very slow. And then eventually we got broadband. And that was amazing. We were getting like three megabits per second
Starting point is 00:42:14 down, which was a lot better than dial-ups. It was really fast. I was able to watch my YouTube when it was just coming out in 2006. I'm watching the amazing things at like 240P, maybe less. Beautiful. But yeah, I think people now take granted how fast internet has got and realizing actually when it was slower. Actually, this is the funny thing as well.
Starting point is 00:42:38 Like, a bit of a tangent because this is how my brain works. Sorry. That's fine. Let's go. We'll follow it. like, websites loaded a hell a lot faster back then. They just down in many ways. And I'm not just like going back to things. Like, because
Starting point is 00:42:50 the internet speeds were slow, we had to optimize have a lot more for the websites. People don't do that anymore. Yeah, you just like, oh, 50 megabytes for website. Yeah. Yeah. It's like, no, no, it's not like it was 50 kilobytes. No, it's like 50 megabytes, 100 megabytes now. It's like, yeah, people look, internet speeds fast enough, right? No, not everyone does.
Starting point is 00:43:10 And then they take forever to load, even when they downloaded. And then they also downloading multiple different places because they're thinking like, oh yeah, I have a thousand connections to download these different places from different places. That's fine. It's like you don't know what latency is then. Thank you.
Starting point is 00:43:23 Yeah. I think there's, you know, this kind of ties back into the back to the back to the thing, right? Where now it's so easy to just install, you know, if you had to install React package by package, I think people would reconsider using it for everything. Yeah. Oh yeah.
Starting point is 00:43:43 I think this is off the problem again with you automate something like that. You don't actually start thinking about the consequences of each of it. And this is the problem is not everything needs to be automated. And I know that's a controversial opinion for many people. It's like, well, if I can automate it, why shouldn't I automate it? And I'm thinking, yeah, but you don't know what you're doing. Like you actually don't know the consequences of what you're doing when you do that. And again, I'm not like, react me is kind of the idea of react is kind of genius.
Starting point is 00:44:09 But then everything else that comes from that. There's all the things that's like all the dependencies and search. It's just, oh yeah, that's fun. Well, I think it goes back to what we're saying before, right, about understanding those low-level concepts. I think if, like, you know, I'm coming around to this idea, right? I think there might be some value in understanding how your dependencies fit together and then automating it later, right?
Starting point is 00:44:37 Having that base understanding of this is how things actually work, this is why I, like, why do I need this package? What is this package doing? Can I get rid of it? Yeah. And then once you want, like, once you have that understanding what the package is doing, you know, if you want to automate it then, you know, hey, totally fine. Like a good example.
Starting point is 00:44:57 Yeah. As I used Arch Linux. I think you should manually install Arch. However, if I'm spinning up a VM, I'm not manually installing Art. I'm going to run Arch install. I'm going to set it up in five minutes and that's going to be all I need. Yeah. I mean, for me, when I'm installing an operating system, I just want it to be dumb as well. That's my actual thing. Like, I have done the arch from scratch before.
Starting point is 00:45:21 Never again. I just, I don't like that experience. Like, I'm kind of the thing where I just want this computer to work, just work. And last time I did the arch thing, it took me a week just to even get the audio drivers to work correctly. Because every time I restarted the machine, it didn't work again. And I was like, what's going on here? And I was like, oh, I'd literally try all different ones. I was like, oh, poor, audio. Then you had to go to all the, pipe wire and all this crap. And it's just, yeah, it was wonderful. And people saying, just not doing it correct. Have you not read this little thing?
Starting point is 00:45:47 And I'm like, great. But I think there's an incapacity with a driver with my hardware, which was, it's like, Linux still struggles with audio. It's amazing, right? But that's also the general other ideas that some places you do want to automate it. Like, again, the lovely experience of just installing software, like the operating system, it shouldn't be difficult. In fact, another thing is, why does it take ages to install operating system?
Starting point is 00:46:09 should it just be able to copy and paste it onto the drive and it mostly be done? Why is there so many other extra setup stages? It's just, that's another, and it takes literally sometimes half an hour or more to do it. I had to do a Windows install, actually, great, great comparison. I did a Windows 11 install recently in a VM,
Starting point is 00:46:29 tested that out to... So sorry. I don't remember what I was doing. But for a separate thing, I also set up Windows XP, because I wanted access to Windows Movie Maker just to get a Windows movie maker, me, Andrew.
Starting point is 00:46:41 I forgot how good it used to be. I forgot how easy it was. You just click next and it's done. Yep. And I think this is the point. People go like, you're just being nostalgic. I'm like, we're not being nostalgic.
Starting point is 00:46:53 You just go do the thing. Try the old software and realize, oh, God, that installed quickly. All that runs fast. And they go, yeah, but it ran slow on the old hardware. I'm like, no, he didn't. It ran pretty good on the old hardware as well, surprisingly.
Starting point is 00:47:06 But there's just so much easy, easy experience. and now the user experience has just been getting worse and worse. And I know why. It's just simply because people get... You might develop a time over performance. I don't even think it's that. Seriously. Because it's optimizing for developer time.
Starting point is 00:47:28 How do I phrase this? I kind of think the idea of developer experience is a bit of a sci-up in the sense that... Sorry, that's kind of a bit of a joke. but it's kind of like, it's not really, they're not actually optimizing for development experience. They're thinking that what they're being doing is like, well, I'm being more productive,
Starting point is 00:47:45 doing all this more stuff. And if I optimize doing more crap, that means I'm doing more stuff, even though it's like, you're actually just making more work for yourself. So I don't think they've actually optimized for developer experience in the slightest, actually. Especially since, and now this is, this is not a real bet, by the way,
Starting point is 00:48:00 but the bet idea is if you said, oh, you develop this application to its completion and been polished, and you do your approach with your fancy things and I do my way, the slower the slower manual way I bet I would probably do it is just the amount of time not the short initial prototype
Starting point is 00:48:16 but the fillish-polished thing and mine would just run all as magnitude faster it would have more functionality probably as well and just be better I'm like but why I'm not saying I'm a much better programmer
Starting point is 00:48:27 but I'm just saying I don't think they actually optimise for developer time at all and I think there's this myth where they think they're doing it but they've never actually tested it. Hmm. Right, yeah.
Starting point is 00:48:41 Okay. Okay, that's fair. Yeah. You see what I mean, though. People think they're optimizing for this. But are they? Do they know? Do they have seen the alternative?
Starting point is 00:48:54 I doubt it. Right. It's this, well, it's a general goal of optimizing for developer time, but if you don't have that reference point on what it would have been without the optimization, did you actually improve anything?
Starting point is 00:49:08 Correct. it's literally always that question is compared to what like oh I've optimized time compared to what other approach what do you mean other approach like compare to what and what hot evidence have you got
Starting point is 00:49:21 for that claim it's like this but again people don't ever get taught to think that way in terms of like because they don't really get taught basic engineering it is this level of like well I could do it this way
Starting point is 00:49:31 I could do it that way and it's like what the trade us for this and this it's like the joke of like when people say I use the right language the right tool for the job if they use language and they all think, yes, I'll just use JavaScript for everything.
Starting point is 00:49:41 Thank you. Because that's the only tool they know. Not the best. It's just the only one, which also means it's the worst. Because if you only have one data point, that's all it says. Right. If the only tool you have as a hammer, every problem looks like a nail. Correct.
Starting point is 00:49:57 Yeah. Yeah, if you only know, don't try and paint your walls with a hammer. It's not a good job. If you only know, JavaScript, everything is... I'm not trying to create the... That's how you get the Windows Start menu. I'm going to react.
Starting point is 00:50:09 I'm on Windows Lerlux. right now. I hate Windows 11, but I'm doing it just for dog fooding for work stuff. Yeah. Oh God, the start menu, everything else. I've literally seen accidentally it's popped up sometimes. And people say, no, it's React Native is what they use. And I'm like, great. Why have I seen a console window then before? That's just a web browser. You know, like the inspector panel I meant that thing. No, that's a web browser. That's not React Native. I love software, okay? I love Windows. Oh, this is awful.
Starting point is 00:50:44 I've been thinking about downgrading to Windows 10 for this machine, but yeah, I literally have. Well, this is one of the things I do like about Linux is that if you want to avoid a lot of stuff, you know, you kind of can. Like, if you, obviously, if you're going to use other people's applications, you kind of will have to deal with stuff eventually. But at least at the operating system level, you can get rid of a lot of that craft. If you want to live like it's 1995, like, you can. Yeah. The only problem I have many issues with Linux, but I just don't have to have brain issues. It's not both operating systems, by the way.
Starting point is 00:51:23 I'm not, like, completely biased. I am just like, I have issues with all of them, but like, I'm developing software. I'm doing it because most people use Windows, so I'm developing four Windows applications. But I also don't really like developing, doing an application on Linux yet, because not everything's there yet. and also the Linux experience isn't great. It's the irony that Lirx is made for developers. It's made by developers, but it's not for developers. It's not nice.
Starting point is 00:51:53 And people go, yeah, but have you not done X, Y, this thing and this thing? And I'm like, yes, I have, actually. They don't work very well. And the development experience on Windows is just much better because they're actually, weirdly enough, better development applications on there, especially like visual debuggers. I know GDB is very, very powerful.
Starting point is 00:52:10 and they're all like wrappers around GDP that can give it, but they're not brilliant. And GDP's interface is dreadful. There's loads of little things where it's like people just bodge things and it's not a good experience. And this is for me at least, me when it goes to Linux, hopefully when the steam machine comes out, I'll be buying those as development machines myself. Yes, it's going to be arch, but it's going to be a very closed down arch that doesn't do anything. And I'm like, great, that'll work for me. It'll do the job.
Starting point is 00:52:37 And I can target it for other people. It's effective a fixed target. So it'll be a lot easier to develop for, and I don't have to mess around with anything. I know I can also develop on it. I know that the auto drivers work, for example. Oh. So, yeah, there you go.
Starting point is 00:52:54 You brought up gaming there. I did want to kind of talk about, whilst Odin is not just full gaming, that is something where I have heard a lot of discussion around Odin with gaming using, you know, Raelib. I don't know. What do you want to say regarding some, of the use cases people have for Odin.
Starting point is 00:53:15 Yeah, so Odin is general purpose. You can literally make anything in it if you wanted. You could make an operating system if you wanted to kernel. You could make a web browser. Very difficult, but it would take you a decade, but you could do it. That's just making a browser.
Starting point is 00:53:29 That's just making a browser. Like, well done guys for doing like the Lady Bird browser, they are going through as they can and they're getting there. And they're going to be like, what, the fourth browser to, and I say fourth, it's technically the second browser because all the rest are based on each other
Starting point is 00:53:46 from like all the roots aren't they at the end of the day yeah all the other ones died like i is dead then edge which was sort of i is dead opera's dead yeah now all of them that exist is you've got chromium web kit and mazilla right so i'm just using that and so we're web so gecko i should say
Starting point is 00:54:04 sure and technically all of them are based on like spring like they're literally forks of older I think you like mosaic and so like the much, and maybe wrong plebe of time again, but literally our forks of much older web browsers. So, in effect, they've all got the same route in many ways. Um,
Starting point is 00:54:20 I can't remember exactly, but it goes. Both WebKit and Chrome stem off of Khtml, which was the KDE 8, uh, KD browser project from decades ago. So there's all say that. It's all levels of, there's not actually many web browsers at there. The blink rendering and, like, for anyone who wants to get pedantic about it.
Starting point is 00:54:41 That's going back some time. Bloody out. I forgot about blink. But yes, there's stuff like that. So clearly when Lady Boe comes out, finally we've got another engine that's from scratch. It actually helps with stuff. But again, we're going back to Odin
Starting point is 00:54:55 we developed for games. And many people actually think Odin is specifically for making games with. And this does make me laugh, because when he's all, Odin's only good at making games, which the thing, the reason why makes me laugh is Odin's, like, games are the most general purpose. thing you could ever do.
Starting point is 00:55:12 Like they cover every type of programming named demand. And if you're saying that's great, thank you very much the biggest compliment you've ever given me. Thank you so much. But again, it's one of those people who are saying with RayLib. People use Odin to use RayLib because you download Odin. It comes bundled with Raylib already. Because it's a vendor, Raylib, there's a package in there.
Starting point is 00:55:33 And then you can just start using it. It works. In fact, all you have to do is start writing it and do Odin build. And that's done. You don't have an external build system because the build system is within the code itself. It's just automatic for you, does all the linking for you. And it's just so easy and quick iteration to do things.
Starting point is 00:55:52 And that's just the start of it. Like literally it's just easy to download. Everything works. Everything's all packaged together, all vended. And it's been tailored for the language as well. And then Odin has many different features within the language to make it such a pleasant experience compared to, let's say, using Ray Live from C directly.
Starting point is 00:56:08 Again, we've got proper array types, like dynamic arrays, so you can just keep appending to things if you wanted. We've got hash maps in you. We've got proper string formatting. You don't have to just use printf in C-star. We've got runtime type safety on the string formatting. We've got array programming. This means you can multiply arrays together with matrices and swizzling
Starting point is 00:56:26 and all that magical stuff. There's a lot of little things where you go, oh my God, this actually feels like a really high-level language or even feels like I'm writing in like a shadier language. But you're not. You're doing something. which honestly, know the language is really caring to that level, and they're not to give that lovely ergonomic experience.
Starting point is 00:56:47 And that's one thing about Odin when I'm designing, is it is ergonomic, extremely ergonomic. And usually most people say Odin is extremely comfort to use. And that is a lot of design, a lot of iteration, and understanding how people use things. And that's all the point of ergonomics is. It's about designing for humans. and that's what a program language is for
Starting point is 00:57:10 it's not for computers necessarily it's for humans I did see it I did see a crazy comment it's like going back to AI from early I just a crazy someone's like it's just a little side tangent someone was saying oh it doesn't matter if the code's ugly
Starting point is 00:57:28 because code's not made for people anyway it's made for the computer if your entire if your entire development mindset is basically around the the LLM doing everything for you, you know. I can understand where this mindset comes from because they're like, well, I'm programming so I can then make the computer do the thing.
Starting point is 00:57:46 So therefore it's for the computer. But it's not. Like these are high-level abstractions, which are for people to deal with. So then they can manipulate the computer. That's the whole point of the compiler. Like it's not, like, if you're saying, it's just a computer, like, great,
Starting point is 00:58:00 we'd all be von Neumann and we just write in machine code directly. And because anything other than that, just a waste of time. Because von Neumann was that smart and didn't understand that people weren't as smart as him. Yeah. But that's where it goes to. But again, this is the thing is when you try and make it a very
Starting point is 00:58:21 comfy experience, like a lot of times some things are just completely invisible as well. Like you don't even realize they've been solved because they're not problems to you anymore. And again, I wasn't saying like that build experience, I can just do Odin build dot, like the current directory. Works, just works, or even Odin Run dot, and just run the current directory,
Starting point is 00:58:38 it builds, it runs the executable, and it works. It's a very pleasant experience. There's no external build system that needed most of the time in the vast majority of times of most projects. Even the stuff we have at work,
Starting point is 00:58:48 Django FX, which is really complicated programs. I can just do Odin Run Dot. That's our entire program it runs. That's how simple it is. It builds, runs, and it builds in, I think at work now,
Starting point is 00:59:03 I've got it down to about second on my machine, so I can build Emmergen, which is half a Mineralancer code in the second. Dumb. It's wonderful. Yeah. That certainly makes things easy to test that if you're building...
Starting point is 00:59:16 Like, that's crazy. Yeah. Yeah, build speeds are really important. I think this is a lot of people don't realize, again, ergonomics. This iteration time is very important. And build speeds are a really important aspect of that. Because you can iterate quicker. If you don't have to wait, like if you're doing with Rust,
Starting point is 00:59:33 rust has some long compile times. And you can be waiting. or like C plus plus if we're not even have to go to a more modern language. I remember some of my colleagues, some of them are C plus programs. They go, I love how fast Oden is. And at the time when they were saying this, I thought, oh, it's really slow. It's taken five seconds to compile. And they're used to five minutes.
Starting point is 00:59:51 Now, I've gotten that time down further and further now. So they're really happy. It's even faster. But it's just this levels of like people put up with really slow stuff. And then it kind of changes your way of thinking as well about a problem. because if you have just wait, you go, I don't know, you have a cup of coffee, or you go out for a little pork or something, like, everything's compiling. And then you're not thinking about the problem anymore.
Starting point is 01:00:13 Well, if you can just, there's a quicker iteration time, oh, I can actually be more productive. Much more. And that's again, it's all about ergonomics. It's about designing for humans. Okay, yeah, I was gonna ask you, like, is that like part of the philosophy in how the language is designed? Like, this, this designing for humans,
Starting point is 01:00:34 is this ergonomics? And if so, like, what are the other sort of design principles you have here? The design principles in general, it's just usually, again, I said this very conservative approach to design is saying, like, look, what approaches already know, we know work? And then just do that. And, but sometimes they don't work. Like, for instance, if we have this interacting with another idea, they may not be coherent ideas.
Starting point is 01:01:00 So you have to kind of like, when you're designing things, the number one goal is always to be coherent. And then if and then aim for consistency, but if you have to choice between coherency and consistency, I choose coherency every single time. And this is kind of, again, there's all these little design goals. It's like, okay, as I said, ergonomics. What are people problems do people actually have?
Starting point is 01:01:24 Solve that specifically. And once you see that, understand that idea, you'll see there's a certain pattern throughout Odin, the language itself. a great example of this is Odin doesn't have operative level of thing or stuff like that and you'd be going like
Starting point is 01:01:39 oh but I want to be able to add my own data structures and such it's like well Odin's got took the other approach going well what's the actual data structures you need well we've just added them in the language directly
Starting point is 01:01:50 not in the core library in the language so we've got your rays you got your dynamic arrays you got hash maps they're in there you know and they've got
Starting point is 01:01:59 and this thing is where we actually had the stuff that people, what they would have normally used, say, operator O'O learning for, and just implement those things directly. Like, oh, I wanted it for Aramithic. Well, guess what? You can just add two arrays together. It works.
Starting point is 01:02:14 And does it element-wise? They go, yeah, but I also want to do another one of the ones saying, like, oh, I also wanted Quaternians or are complex numbers. I'm like, guess what? They're in the language as well. So there's all these little things where it seems like, oh, it just seems a bit ad hoc to add all them in. It's like, well, it's not ad hoc.
Starting point is 01:02:28 It's more of like, what do people use this problem space for and do. that, rather allowing that generalized solution, we say operator of loading, to open a Pandora's box, because I have seen actual horror shows of people doing operator loading, where you go, what have you done? You've overloaded the, I don't know, the multiplication operator, and now it turns on a toaster. What? Yeah, for anyone who doesn't know what operator overloading is. That's a bit of an exaggeration, but yeah. Yeah, for anyone who doesn't know what operator overloading is, Basically, it's the idea where you can redefine what the addition operator or the division operator does in the language. And this is fine when you're dealing with types that logically makes sense to add together or divide,
Starting point is 01:03:16 or these various things you might do with operators. The problem is people start using them as a replacement for, functions that have, that should have a more defined name. Yeah. And when it's not even just that, it gets even, even if it was just more arithmetic, sometimes people do very complicated arithmetic in such and just do it like, and they'll redefine what the operation means. Like, I remember seeing a vector library once in C++, and in most C++ code,
Starting point is 01:03:50 you'll see like the percent sign and this means, effectively modular or rate remainder. That's what it means. But this one was using it for a vector. So you'd see A, the percent sign, B. Now, I'll let you have a guess. What did that actually do as an operation? I... Now, get a hint, it wasn't Remainters.
Starting point is 01:04:09 I'm... You know what? It could be anything. Just, what is it? In this one particular one I use, I remember A and B are vectors. Yes. Well, this percent sign, it looks like a cross.
Starting point is 01:04:22 So they used it for the cross product. But people... do this and you think, yeah. Oh yeah. This is not even the worst one I've seen, by the way. Oh, it gets worse than that. At least they're doing mathematics. That's something.
Starting point is 01:04:38 It's mathematics, yeah, but is it the mathematics she wanted? No. No. I've rather, it's just... But that sounds like a very minor complaint. Yes. But it gets worse than that. I've seen worse and worse.
Starting point is 01:04:52 So you're just like, okay, I don't want to add a feature like this, which yes, does allow for generalization, but it opens a Pandora's moment. box of insanity. And this is also another design aspect when you're designing for humans is that when you've seen many other languages and they usually optimize for the individual program. Odin, I'm trying a bit more optimise for the team because if you optimize just for the program and allow him to do whatever you need to do, you have this explosion of complexity,
Starting point is 01:05:20 which all of a sudden now what you write in your code doesn't work for other people. and now you've got incompatibilities, you've got dialects popping up if you go for the original thing, it would be like the curse of common Lisp pops up here in this sense and then people have been trying to mitigate that by having more well-defined ideas of concrete ideas to get rid of that, again, rising up of dialects. So if with Odin, I've been trying to think, okay, look, stop trying to have this magical, let's solve everything with this one idea. Not brilliant, but it just solves everything, but poorly.
Starting point is 01:05:55 We just go like, okay, what the problems people do? Do that, do that, do that. Even if, even if that means you've got, it doesn't please everybody, but it will please the vast majority of people. And also not just that, it'll make your colleagues, your co-workers, a lot happier because they understand
Starting point is 01:06:13 the constructs and idioms that everyone abides by. It's all at the language level enforced. So it's those kind of little things. Language design is funny if you didn't guess. It's also very difficult. to make sure when you're actually doing a proper language that is used by many people. And I think at work, we've got, I don't know, is it 20 programmers now at work?
Starting point is 01:06:34 Or using Odin? That's fun. And you're trying to literally design for all of them and make sure it all things. And that's just one company, obviously. And a dozen other companies that use Odin, profession is their main language. That's also fun. Yeah, there's a big difference between, you know, designing a language, because you feel like designing a language, you want to just see how language.
Starting point is 01:06:55 language design works and then actually trying to make a tool that other people want to use. Yeah. Yeah. It's that. It's not even just that. It's like, oh, I want to make a proper language for me that I'm going to make my own software. It's like, great. That's a very different tool making the language for you as well as making it for others. Because they're all, again, as I said, I've said on Twitter before, other places, there are decisions in Odin which I don't even like. And it's because I've taken certain compromises or trade-offs because I'm trying to make sure it works with other ways of programming to aim for that.
Starting point is 01:07:36 And sometimes people don't understand it like on things. But if you explain the logic to them, they'll go, oh, that makes perfect sense, but I never thought of it that way kind of thing. And it's like, yeah, it's just these little things where you don't realize until you interact with other people, what these problems about. And a lot of these things, you can't even come from first principles. you actually just have to see how people program. And you go, good God, I don't want to allow for that.
Starting point is 01:07:55 Let's not do that, shall we? Because a lot of it's empirical. There's a lot of things I made and known when I first added stuff. I went, I didn't think they were going to do it that way. What? And again, there's another kind of design philosophy there. It's very much this, I'm not trying to prevent people from doing things. You can shoot yourself in the foot.
Starting point is 01:08:14 And I do it quite easily if you want. But it's more of this. It's more of I don't want you to shoot other people in the foot. if they make any sense. It's really very hard to explain how this mad mind of mind works to people in my design approach because it's not really
Starting point is 01:08:30 trivial in that regard. You did hit on a really, a really interesting point. I don't think you've, like you kind of just jump right past it there. Yeah. Making a design choice that you don't necessarily agree with. Coming from the Linux part of the open source world. That is something that is insane to hear because you're often here, especially from some of the more narcissistic projects, we'll say. They don't need to be named. They know who they are.
Starting point is 01:09:05 This project is being designed by the developers for the developers. And if you want to make a change, if you want something to change, then you should go and submit the code to change it. Like this is a very common mentality that exists in the Linux world. Yeah. It's also why our biggest reason I don't like a lot of open source software in general because of that mentality. It's very much like we don't like it. We have the sources available can just modify it now. And like, no, just no thank you. But there's also, this is also the problem with open sources. There's a very little incentive for the developers actually to make it decent. So this is, this is again, this is a real big problem with open source software. Is that lack of.
Starting point is 01:09:48 incentive structure that's there because it's, again, open source software and free open source software in general tend to make and produce free as in beer software. It isn't, how do I phrase this? It's going to be free in practice. It's very rarely ever going to make open source that becomes paid. So what's the incentive to the person to keep making something better? What's the incentive structure there? I'm not saying there isn't one. It's just it now becomes a different kind. So you do get this narcissism where people say, well, I'm making it for free, I'm giving it out for free where you can just be happy that it's for free. And honestly, that just produces awful software. And for me, with Odin, I know it's open source, but I get, I'm not the biggest
Starting point is 01:10:34 proponent of open source software at all. Odin is open source, but the way I approach it is more, here's the source. You can see me develop on it, but I'm not really, I'm trying to make his best product that I possibly can. Like, I'm trying to be for other people, not just me. When it comes to... Oh, go on. Go ahead, you go ahead.
Starting point is 01:10:58 Sorry. I was just going to say, like, when it comes specifically to languages, it's really hard to sell someone on a language that isn't both free and open source, not free and open source, but free, you know, what I'm saying. Free is that you don't pay for.
Starting point is 01:11:14 Like, people outside of very special, specific cases are not buying, you know, not buying compilers, not buying languages. It just does not happen at this point. No. Even at the corporate space. Very rare. The expected price of a compiler nowadays for a new language is zero. Back in the past, people would have been able to sell compilers.
Starting point is 01:11:36 And in fact, there are still languages today which you can buy their compilers. A great example would be Matlab or Mathematica. But Matlab's been around since the 80s. Right. It's like they've been grandfathered it. grandfathered in. Correct. So, but this is, this is the problem when the economics of programming languages is bad.
Starting point is 01:11:57 And most languages that come out today are usually created by giant corporations where the language is just subsidized by that corporation. And then they try and, but then the way they do is they push it on to different projects and they get, do that sort of marketing. But if someone like me, I'm like, I'm not funded by a giant corporation. I have a job that workers rank. Yes, we use Odin. And I do get paid to develop Odin,
Starting point is 01:12:21 but I also get paid to develop things in Odin with using as the language. So the incentives, it was complete different. Many of the languages have this issue. It's not just Odin's problem in that regard. There's a lot of, there was a, I remember seeing a talk on the economics, a program languages a few years ago.
Starting point is 01:12:42 I didn't really agree with it because I think a lot of it is also, a lot of it you're just relying on charity. That's pretty much if what you're going to be doing. There is no way of getting money to provide to support to do it. Unlike some of the projects which are easy to sell, like a game is a very example because you make a game, you can sell it, make money from it, make more games, whatever.
Starting point is 01:13:09 But a program image, everybody expects it to be free now. That's the market price. Because why would I use it to pay for something when I can use this other thing for free. And it's because those big giant corporations subsidize the other ones to be free, pretty much. So why wouldn't you? It's this, and it's like, I don't blame people. It's just how markets work at the end of the day. And it does this kind of weird. There's also the second thing. It's a general thing with open source. And I'm sorry for people, I'm criticizing open source bit here. But this is the general model. Open source in general. I'm happy to see some different
Starting point is 01:13:41 opinions here. Yeah. Like, there's this problem, like, common feeling of like, guilt. many programmers have that they should give their knowledge out for free as well to the world. But I always think, why should you feel guilty? Like, why is that the right emotion that you've placed? Like, why is that even valid? It's like, because the problem is when you have all these opens or stuff, it kind of makes you, it kind of forces you into a sort of charity to give away everything for free. You wouldn't do this in any other area, any area other than programming.
Starting point is 01:14:11 So why? Why are we having to be free? I'll slightly push back on that. With the growth of YouTube, I think there has been this sort of also push back against selling general knowledge. A lot of people feel weird about producing a course. Even if the content they're making is incredibly good and people would pay for it, a lot of people feel like I should just release that out there on YouTube for free.
Starting point is 01:14:41 It's ad-supported and people just watch it. Yeah, but at least, again, one benefit of YouTube is at least is as supported. You've got as. That's one minor thing. That's the monetization model there. But the other problem is that people further is guilty. I know, I need to give it out for free because everyone else is doing it. And again, that's what happens with everything.
Starting point is 01:14:59 It's cheaper and cheaper. But the thing is, a lot of those paid courses that you'll see, it's usually a hell of a lot better than the LWC for free on YouTube, usually on average, not always. But again, it's this, I'm not saying, it's hard to explain this nuance to people because I know it's nuanced, because the point is I'm trying to say here is there's a tendency
Starting point is 01:15:19 not for definite here and I think a lot of people are nice giving out things for free but it's like how do you make a living? We live in a society where we need money and
Starting point is 01:15:35 at least again with YouTube there are adverts and then other people rely on sponsorships of things obviously they most YouTubers will have a sponsorship or something which usually pays for the video
Starting point is 01:15:47 not the adverts that come from YouTube. And again, absolutely fine. But then you get, again, come to software, well, what's the monetization model there? What is it? I'm not saying they should be adverts in your software. I'm not saying that. But I think a lot of people should actually sell their software, which is, again, sorry
Starting point is 01:16:08 for guys. I know it's being controversial here, but I kind of want people to make money and keep making good software. And a lot of the stuff that comes out for free, people use that because then it's free, but it may not actually be good software. It's just, it's free. Even if the thing that costs money that's only like a dollar, well, I'm going to use the free thing because it's free.
Starting point is 01:16:28 And as a consequence of this, a lot of people, and especially programmers, don't value their time. They literally value their time at zero. So you may take this thing cost you free, but it's spending hours on hours when you could have bought something, well, hypothetically bought something, which would have taken seconds. And you wouldn't have had to do all that insanity.
Starting point is 01:16:49 Because you don't value your time correctly. I've talked... Sorry, it's just a bit, but... No, no. I've talked to quite a few people in the open source space about software funding. And it's a really tough equation, right? Because it also matters, like, where in the software stack you are.
Starting point is 01:17:10 So I've had KDE developers on before, and they're in a position where they can put a donation prompt in front of people. Every year they put it... For past two years to put it... donation from front of people around December. They bring in like $200,000 just in like that little bit at the end of the year. They're doing incredibly well. Gnome does a similar thing.
Starting point is 01:17:33 They're doing less well, but that's Gnome. But if you're something like... Yes, yes, that's true. If you're a lower level library, I've spoken to Till Campeyter, who is the developer of Open Printing, who does like the printing stack for Linux. if you're a printer driver like he used to work at canonical and that was all being funded
Starting point is 01:17:58 now he's trying to set up a separate foundation under the Linux foundation but like you can't charge for printing drivers at this like where's where's the funding that's the thing is a lot of things
Starting point is 01:18:17 with drivers historically would have been the printer manufacturer themselves made the drivers. Because you buy the printer and you give out this thing for software for free. But now you get into a situation where even the manufacturer drivers don't work because everybody hates printers. They always fail. And there's always problems with them.
Starting point is 01:18:34 And it's always the driver usually. Sometimes it's not. Sometimes it's just the operating system. Like Windows, I've sometimes had to reinstall the driver just to make it work because Windows does something I still don't know to this day. But reinstalling the driver makes it work again. This happens like every like nine months. But again, this is just these different models.
Starting point is 01:18:55 And I think there's also this, this is the problem when you have, there's this issue with like the open source model a lot of people have is that they think of the ideals of open source. And think that that's reality as well. Like these ideals shouldn't become reality. I'm like, but that's not how reality works. So we have this. there's a lot of things where there's a lot of negative costs that people aren't seeing because there is no price mechanism to see where to do.
Starting point is 01:19:32 But it's just hard. It's a hard problem to solve. And I'm not saying I can give any solutions to this problem. But I am kind of, it's annoying nowadays that a lot of software has become free. And a lot of the commercial software has become free. but either has ads in it or you have to have a subscription to it and again, nothing necessarily wrong with subscriptions
Starting point is 01:19:54 I'm not criticising that as a model but then it's this free to entry and then it's to pay for it rather than just can I just buy it outright please? I'd love that in a lot of software can I just buy it please? Right, like if you were to look at your
Starting point is 01:20:11 you know, let's say you're an Adobe or something if you offer I'm sure they know their cancellation rate is like how often people subscribe for before canceling. If you were to sell a license for that version, people, like, even if it's like a $500 license, people would, people would just pay you the law, like a thousand dollar license, people would pay it.
Starting point is 01:20:32 That used to be the case. It did used to be, yeah, Adobe used to do exactly that. You literally bought a version of a Photoshop, and guess what, it worked forever after that. Like, I'm not around me here, the bit, Like, I've probably got a version of CS5.5 somewhere. It works. If I want to use the Creator Suite 5.5, it works.
Starting point is 01:20:55 I don't need to date. In fact, this is the thing about Photoshop is its functionality. Most people don't need anything more than like CS2 in terms of functionality. Right? And I think that became accidentally free, if you know what I mean, on the internet. Like, it was just one of those that just became that kind of thing. But there was also, there's a lot of software like you buy once and it works. So sometimes maybe you, you, you, you'd buy it once and it works.
Starting point is 01:21:17 So sometimes maybe you, you, You have to pay every year to get a maintenance fee. For instance, yeah, you bought it once, but if you want to update it, yeah, pay again. It's like, fine, I'm fine with these models because I'm a developer. I actually like to be improductive and save my time.
Starting point is 01:21:31 And when there's tools which I can literally pay to save me time, I will do that. I know if I was a child when I was a child and I had no money, then yeah, actually my time was actually a lot less because I had no money to spend it, so I'd waste more time. But now I'm an adult with money. I'm like, actually, I've got money to spend, which will save me money.
Starting point is 01:21:50 So it's this. I also think this is also the problem with the internet. You forget how many people are very, very young and very, very, very poor. And also, don't have any money. Yeah, yeah, yeah. And they're usually the most vocal. And they're actually professionals out there are, like, willing to pay for good things. It doesn't know how it's getting.
Starting point is 01:22:09 I have a professional software. It could be anything. Just pay for something. I want software to work, please. Please. And again, I'll be very careful. I'm a free phrase this. I'm not saying everything should be paid for.
Starting point is 01:22:22 Some things should be free. Something shouldn't be free. It's literally this, it depends. And there's no general rule for this. Yeah, no, that's a good point. There's no general rule, but we've applied this, this, this, this generalized idea. And there's this idea on the open source world that we've talked about charity,
Starting point is 01:22:43 right? It's like this utopia where everybody just works for free, creating software for each other. It all works. Everyone is not just creating stuff for each other. Everyone in the space is a developer. Everyone is like feeding back into the software. That ideology is, yeah, that's something else.
Starting point is 01:23:05 It was mostly, if you look at Linux back in like 1994, it was mostly true. Basically everyone using Linux that time was a developer. We've moved so far. past that model, but the model hasn't moved. Yeah, and also you're actually, and this is another counter thing, is like, I always, like one of my biggest criticisms of, I say Linux, the ecosystem, because I know there's people are pedanting on the internet. We say Linux, they say, you know, that's just the kernel, don't you know?
Starting point is 01:23:36 Yeah, I'm going to, yes, but that's not how people, for a phrase that. I'm like, look, Linux, the ecosystem, I'm being very careful because I know YouTube comments and all that and Twitter comments and search. It is not friendly for anyone, actually. let alone beginners or even the developers themselves like I don't know how long you spend when you install the new version of arch and then just trying to set that up
Starting point is 01:23:58 I don't know how many hours you waste doing that um it's been my system I've got to fast now yeah I my current system have had for a while but I would say last time I did it probably like a six hours or so yeah okay so but that's still quite a long time for a lot of people as well
Starting point is 01:24:18 I know that sounds like, which means it's only six hours. I'm like, some people just want to computer, switch it on, it works, that's it. They don't want any setup cost.
Starting point is 01:24:26 In fact, I think a lot of the time, Linux is getting better, especially when Valve is doing a very great job with Steam OS when that effectively comes out officially, because it's like,
Starting point is 01:24:35 here's the decent defaults. Well, frameworks also selling a bit more fancy, yeah. Selling with Ubuntu as well for their new framework. Joel's done the same thing in the past as well. So there are these devices
Starting point is 01:24:45 that do exist. It's just, just few and far between. Yeah, and this is also the other issue with Linux January. You've got so many distributions as well. There's so much choice where that choice is not a good thing as well. Like for the average person, that level of choice is detrimental to them. Like if you know what you're doing, that choice can be brilliant.
Starting point is 01:25:09 If you don't know what you're doing, it's like asking, I can't think of a good analogy, so I won't. But it's literally like, okay, I will say I don't know anything about computers. I'm like, which version of Linux have I got to do? Why is there so many different ones? Why is there a Hannah Montana version and a Pop OS and Arch Linux? And it's like, which one do I choose? And it's like, and then you literally, what you have to then do. And this is the thing is, if you literally ask which this show,
Starting point is 01:25:34 you have to then search on the internet, you find all these different forums that have like rank a month form 1 to 10 or something stupid that tell you what the benefits are. And the average consumer is still even more confused. Yeah. Yeah. It doesn't help anybody. I'm not seen,
Starting point is 01:25:49 and this tree, it's one of those where it's like, they just need a dumb thing. Like, this is the easiest one, do this, nothing else, don't even,
Starting point is 01:25:54 like, but, and then you get, this other problem is where you got the skill people say, well, just use Arsh, it's great. And I'm like,
Starting point is 01:25:59 yeah, arch is a distro maybe fine, but like, the user experience isn't necessarily easy now to get into it. So it's like, you know,
Starting point is 01:26:06 it's not helping anybody. So it's just this frustration. It's where the, not everybody is as nerdy as you. Yeah, I think a lot of who, like I am, but,
Starting point is 01:26:18 But it's still not, I'm not necessarily what the audience I'm talking about. You know, you said like an hour and a half. I didn't mean as you, well, maybe you are, Brody. No, you said an hour, like an hour and a half ago, a problem that exists with LMs is you have people with autism talking to an autistic machine. It's kind of the same thing here. A lot of, a lot of people on Linux are not able,
Starting point is 01:26:43 they do not know what other people are thinking. They have no idea what the average, like, Maybe, like, they have this idea in their head of like what the average user is, but they've never actually interacted with the average user. Nope. Or maybe they think, well, my mom and dad are struggling on this computer, but that's just my mom and dad. And I'm like, no, your mom and dad are probably the typical computer user.
Starting point is 01:27:06 And frankly, if they're near you, maybe they've learned something through osmosis. Yeah, maybe. This is the thing. But then it's just, this is why a lot of people buy a Mac as well. like, for better or for worse, when you open up a Mac, I've got one in front of me. It just works. Like, okay, it's not brilliant. Like, the hardware's great.
Starting point is 01:27:29 Oh, yeah. The operating system's got its issues, but it's a much better experience than, say, using Windows 11 nowadays or the vast majority of Linux distrakes. Yeah, yeah, yeah. In fact, I'd say all Linux distros, in fact. I can't think of one that's actually even decent compared to, like, Mac.
Starting point is 01:27:47 And again, that's not even me saying Mac is good. But again, this is all going back to everything about, I say, cognitive ergonomics in general what I was talking about earlier, designing for humans. Most software isn't really designed for humans. Or at least not mere humans like myself. Yeah, there's, you know, there's this all manner of whether you want to get into the ux design or anything else like that
Starting point is 01:28:18 it's just yeah software software is just a mess basically yeah it is oh it is it's an absolute mess very very fragile mess as well yeah
Starting point is 01:28:30 the amount of stuff we rely on and again it's again package managers people make software that relies on thousands of dependencies and now you may just offer extremely fragile and you're being very pessimistic with how you develop things as well so it's now going to run really really slow to the point where you get people going like
Starting point is 01:28:45 well that took a second to low, that's pretty fast. I'm like, this should have taken a microsecond. Oh, God, yeah. I listen to web developers talking about how long their page takes load and are impressed by it. Why? Are you, are your standard's that low? Yeah, they are.
Starting point is 01:29:02 They don't, this is the problem is they don't have anything else to compare it to. Their view is like, well, it's faster than I can blink, therefore it's fast. And I'm not joking, that's probably how many people think about speed. They go, well, it's faster than I could do manually in my mind. or something, therefore it's fast, that's computers are faster. You don't realize how fast computers are? Computers go ahead, have a lot faster than this now, man. Yeah, people say, you know, people will say,
Starting point is 01:29:26 I think people actually understand this, right? They'll say things like, oh, you know, the computers we have today are X times faster than what sent us to the moon. And then they're like, they don't make the connection there. Like, they're that much faster, but the software is like, you know, that much slower on the other end? Like, do we not
Starting point is 01:29:51 see the problem here? And, you know, that's the old joke goes, Andy taketh, Andy giveth, that Billeth taketh away. There you go. That's Andy from, like, Intel and Bill Gates as he makes software slower. It's a really old joke. But yeah, I don't think people realize how fast computers are, because they, I think
Starting point is 01:30:08 the vast majority of, obviously, developers don't actually understand how computers work. like they just develop and it's this abstract idea they're with and I'm not again I'm not saying that you have to use see
Starting point is 01:30:22 but if you do use see you can actually understand how things work better because you have a better mental model of how things work it's not perfect by the way but I just wish a lot more developers were at least a little bit aware of
Starting point is 01:30:36 the slightness of how faster computer could be compared to what you're doing especially if you're a web developer. There's this I'm not saying like I'm going to say web device I'm talking about front-end people
Starting point is 01:30:51 and I'm sorry back end. Just please try and download everything in one connection. Don't just have multiple little things everywhere or don't just use these massive frameworks everywhere that's float and takes ages to load. Oh wow, I've got to have a timer on my website now. Like, what decade are we in?
Starting point is 01:31:09 Like when I've got a startup bar? why? I saw on the other day literally I saw and I literally had to wait a couple seconds for it to load up and then all of it was
Starting point is 01:31:23 at the end of day was just literally effect to be like the equivalent of some text and some tables and this was actually like I was trying to find
Starting point is 01:31:31 some technical details and this just took like three seconds to load and then a show and I'm like was that it was an image some text
Starting point is 01:31:38 open tables done that was it I don't know what they were loading I didn't want to look actually because I could have just seen the entire
Starting point is 01:31:45 profile and gone. And then you look at the list of like 100 warnings and errors as well as in there. Yeah, that'll be another one. Oh, God, the horrors of some websites. I think it's just going to load instantly nowadays, man. They should just do. But again, we're talking right now over the internet. There's a massive latency because I know there are because you're on the other side of the
Starting point is 01:32:11 planet for me. Well, that's like a, there's like light is kind of an issue there. You know, there's like a speed limit there. Laws of physics get in the way. Yeah. However, saying this, look, we've got streaming probably 1080p video to each other right now. And it's running at 60 frames per second, maybe 30, but depends on on what the Discord's doing. And this is not even taxing the computer at the slightest, and your web page is not even be able to do any of this.
Starting point is 01:32:40 What? It's levels of... Well, the worst part is this is in Discord. So there's this one part of Discord that works really fast and then the rest of it is... Yeah. Awful.
Starting point is 01:32:52 Yeah, it's awful and slow. And it's... I think it's because this part of Discord, again, the video, the audio, all this lot, which is a lot of data, by the way. There's a lot of bandwidth that you're broadcasting over the internet we're then talking to each other.
Starting point is 01:33:06 Yes, there's a latency. I'm hearing about, like, sometimes about half a second, sometimes between us. But it's fine. Yeah. I can just check in the ping now. We've got 300 milliseconds.
Starting point is 01:33:19 Yeah. And I'm impressed. I'm really impressed. Three hundred milliseconds, like, yeah, that's just the speed of light in the way. Yeah. That's, yeah. One thing we've, we touched on the start, we didn't really talk about. It's not important, but the Wikipedia thing is just funny.
Starting point is 01:33:38 Oh yeah, the Wikipedia thing. That was a fiasca. Anyone who's just unaware, um, um, basically, Basically, there was a Wikipedia page for Odin. And now there's not a Wikipedia page for Odin, because some Wikipedia moderators felt like it was not a notable language. Yep. There's, you know, there's nothing, it's not important. No one's using it.
Starting point is 01:34:12 You know, besides the fact that there's a bunch of corporate users and there's, yeah. There's literally, if we're estimates are correct, we've got, again, if the estimates are correct, there's over a million people have used Odom. Right? Because we look at how many people download from GitHub. We see how many stars are. Like, on average, people don't do a star repo on GitHub, it's about one in a hundred at most. So if there's 10,000 stars at the time of recording, 10,000 times 100 is about a million. Have used the language at least or can regularly use it.
Starting point is 01:34:43 And we look at how many people download every week and it's in the tens of thousands. and that's downloading it. Not everyone up down, and we have monthly releases. So it's just checking like, yeah, we know there's a lot of people using this, but the reason why to explain what people are going on,
Starting point is 01:34:56 the reason about the lack of not of notability is they're not in scientific journals. Or it's not being written in books, or it's not on, as they would call it, reliable news sites. And some of the examples I read from one of the people here, they gave some examples of,
Starting point is 01:35:15 well, what's the, oh yeah, They said, oh, it's like the Linux magazine or the Infosecurity magazine or Analytics India mag or wire.com and many more. Now, Linux magazine, okay, is fine. That's a maybe a reliable site, but it's for Linux. It's not for general programming languages, right? And if it's on there, there's programmers that they're going to be talking about on Linux are going to be C, Rust, bash, and that's about it. I think maybe a pearl strip from time to time.
Starting point is 01:35:41 Yeah. That's all they're ever going to talk about. the other ones, I never even heard of them, except Wired. Like, I used to have a subscription to Wired as a physical magazine 15 years ago. I don't know anyone who even reads the website, let alone the physical magazine anymore. And also, I don't remember them ever reading anything about programming languages in that book, in that magazine. I just opened up WIRE. It was just to Science, Technology and Politics now.
Starting point is 01:36:06 I think it's mostly politics. Yeah, I opened up the page right now. They're talking about the White House shooting. The White House shooting. Elon, Elon, Zins, and brain implants. Yeah, because I remember reading back in the day, and it was usually not much politics at all, and it was just science and technology.
Starting point is 01:36:29 And I'm like, look, if that's what they find, it might be reliable for what they're commenting on. I don't know. I don't read it anymore. Does anybody read them anymore? Serious question. So this is, so what I'm saying here is that when we got, you did this video,
Starting point is 01:36:45 I made it about an article. and then I had to update it because on Twitter, someone pinged and pinged Jimmy Wales, the co-founder of Wikipedia onto it. And he had a look at it. This is what it was, this is brilliant because I was like, oh God, the internet's quite small, isn't it?
Starting point is 01:37:01 Now, someone pinged him and says, oh, I would love to see if there's a link. And he looked to think, says, oh, it looks very civil and policy-centered, and I don't see anyone there with any kind of weird acts to grind. I mean, who would? But a general interest in having reliable sources
Starting point is 01:37:14 to back up that is what's in Wikipedia. I say as someone who has leans, what somewhat inclusionist, I think seems like a good deletion to me. And that's what Jimmy Wales, just, I don't think he probably read it, but I think he's probably just skimmed it. People going, well, these are the rules, we're adhering to the rules, no problem. And my general reply to him was just, I can read out exactly what I wrote, but at my general appraised, like, the rules are bad for programming, man. That's not exactly why I said a bit more formally, obviously. obviously. But I'm saying the rules don't really work well for programming as a domain.
Starting point is 01:37:50 It's the wrong thing. Like for instance, and again, I'm not even asked, I'm not even that bothered that the Wikipedia is deleted for Odin. Sure. No, it doesn't matter. Like, it doesn't matter. It's like, but it's very much like, I'm not asking for this to be reinstated. I don't care too much. But what I'm saying is, is that there was two criticisms. Like, I don't think the rules make sense for programming because these reliable sources they want are so outdated, they're not reliable anymore. And the only reason, I don't explain this, there's a lot of inertia, like 10 inertia with all these things. And they've just been contested for so long that that uncontestation, that's a word, is the only thing notable about them to begin with.
Starting point is 01:38:35 Right? It is. It's uncontestation. That's a word, right? Contestation. Uncontestation, obviously. a word. Yes.
Starting point is 01:38:48 It's not in any dictionaries, but we can certainly get it added. I can get out of it. I'd be probably the first person to use it, so I'm happy. It makes sense, right? But what I'm saying is if they, at least none of these sources reliable, but also the other thing which was criticizing is if you applied all of this logic consistently,
Starting point is 01:39:06 like 90% of programming articles would be deleted from Wikipedia. Now, I don't want that. I really don't want any of that. But it's just, that would be a logical conclusion. And I think this is also the problem with a lot of like the moderators. They do not apply their rules consistently. And they have a little clause, which is the W-A-X, which is what about X? Which is effectively we just way to dismiss like people's complaints saying like, well, you're not applying it to this article. It says, yeah, but we only consider things in isolation, sir. It's like, no, you don't. You're just ignoring
Starting point is 01:39:37 those because you might like those articles or you may not, you don't care about them or whatever. And it's just this levels of I think the rules need to be reconsidered at least for the programming domain and again as I'm saying a lot of the knowledge that we have like in programming nowadays live on like personal blocks they live in like small communities
Starting point is 01:39:58 closed channels like discord and none of this makes sense for Wikipedia's sourcing standards in the slightest so it's now but I understand what like Wikipedia trying to prevent against. Like, again, it leaves you in a horrible position
Starting point is 01:40:13 where it's like, what if you apply these rules that you've currently got too strictly, most of the contemporary lamps, say, of like, programming would be excluded entirely, right? But if you lose them too much, then it's going to be,
Starting point is 01:40:26 you risk all this advertisement or noise. Sure, sure, absolutely. And it then it just becomes this horrible mismatch. Now, weirdly enough, Jimmy Wells went, yeah, I kind of agree with everything you've just said. So it says, I hear you as complicated matter. And of course it's true and stuff. And he said, at the end, he went just, I agree with all of that, everything I said to him.
Starting point is 01:40:47 So it's like, okay. So after a little conversation, you went, yeah, you did agree. But I'm like, but I'm not complaining. I'm like, it's just this level of the standard for reliable sources is not reliable. Right. And it seems to me mainly their standard isn't reliability. It's actually prestige is what I would argue. Right.
Starting point is 01:41:08 Are you in a prestigious journal? Have you been. published, not self-published, but published in a book. Well, that level of prestige is necessary. And if we don't... And again, it made sense 20 years ago, 30 years ago. Doesn't really make any sense now, now, doesn't it? And trying to say that it does, it's like, great, who's reading programming books,
Starting point is 01:41:26 physical books anymore? Well, outside of like... Like, you know... Yeah, exactly, like new ones. Like, obvious... When... A few people in the comments are like, oh, but languages like Ross, they have a lot of published books.
Starting point is 01:41:40 Like, yeah, there are... new languages that have published media, but that is like the one... The question is like, is Wikipedia for like the top 1% of published languages? Or should it be something that exists to document the array of things that exist? And there's not all the things, it's also like, ask how Rust, how has Russ been able to get all of that publishing? Also, it's been in journals and such. And the answer is, it's got a lot of funding behind it, hasn't it, as a language? It's got a massive foundation, which was started by...
Starting point is 01:42:16 Mozilla. Initially, Mozilla started and then became a joint thing. You've got... And all the other things like that. And then just the goes, they've got funding so they can literally pay to be in journals. So I actually even thought about this. I don't care. I don't want to be on Wikipedia.
Starting point is 01:42:30 But what I'm saying is, if you wanted to be on Wikipedia, what I could just do is pay to be in these reliable sources. Literally, just pay money. Right. And then it would work. Yeah. So it's just a pay-to-win scheme at the end of the day. That's all it is. Like, and sort of my, one of my things I brought up in the video was with all these outlets that just get things wrong with them.
Starting point is 01:42:54 Like, a great example of an outlet that just tends to make things, especially about Linux. XDA developers. XDA used to be an amazing source. Oh my God, XDA is a mess nowadays. It's a, it's a, it's a. It's a mess. But if you have these so-called, like, notable outlets that constantly make these mistakes, you know, in some cases, like, pump out just AI garbage articles that no one even reviewed,
Starting point is 01:43:23 why is that any less relevant than, like, a primogen or someone like that? Well, their rules is they want secondary sources, not primary. They want secondary from reliable sources, which are not YouTube videos. However, I'm not going to give examples because I don't want these articles deleted either, because this is the thing is, I can give you literally a dozen examples. It's just program languages, for example, dozen off the top of my head and going, well, if they apply the same logic, this one shouldn't have existed because no one even uses the language. Like there was one example I was looking like, I just went on GitHub and went,
Starting point is 01:43:57 okay, how many repos does Oden have at the moment on Gailaba? Where's the 6,000 I found, right? Which is not small, but it's not big in the grand scheme thing compared to let's say Rust. Sure. But I found this other language which had its own Wikipedia. It's got citations from reliable sites. And I typed in, it was 40. So there was 40 projects that used it.
Starting point is 01:44:19 So it's effectively a dead language. Not saying which one it is, but it's just very much like, but it's got reliable news sources because of things. And it's notable because of these, there have been advertised in these web pages that I've never heard of before. But it's like, okay, that one's allowed to be out. But then you've got other languages which are struggling, like not just older.
Starting point is 01:44:40 There's other ones in similar age that could be deleted under similar things. But I'm like, they've got more than that. They've got tens of thousands of things on GitHub being used. But because they're not the same notability requirement of not being in like journals or in second, not self-authored, you know, like no, publish books.
Starting point is 01:44:58 Like, well, no, no, no, they're not notable. Which means I just think the criteria for programming is completely bonkers. I'm just wrong. And there's also other things like, I'm just, I'm going randomly here, but there are articles on Wikipedia, which don't even cover some of the foundational things of programming. Like a good example, a friend of mine was showing me was like, link lists, right? There's an article on link lists on Wikipedia. Of course there is. Sure.
Starting point is 01:45:24 There is no mention anywhere, or even on Wikipedia, of intrusive link lists anywhere, which is one of the most foundational types of link lists out there. And not just that, that's the foundation of all modern operating systems. an intrusive ink list. You can't find it because guess what? I bet it's not been talked about in any journals. It's just this tacit information that's within the community because I know what that is. I know what that is.
Starting point is 01:45:49 And people may talk about on their personal blogs and you learn a lot about it. But it's not been talked about in journals because why would you need to talk about it? It's obvious. So you have this basic thing, this very fundamental data structure. Oh, okay.
Starting point is 01:46:06 So I'd never actually heard the term intrusive link list. Okay, yeah. I should have explained. No, no, no. No, it's just... The difference to explain is like, it is extrusive and intrusive. They're very weird words,
Starting point is 01:46:15 but extrusive means you have like a link list data structure that wraps the type if you want. It's a wrapper. Intrusive means you embed the list within the type you want itself. Yeah, that was how I learned link list initially. I didn't even know the terms. How we should do more? Yeah, yeah.
Starting point is 01:46:30 Exactly. But the thing is, it's such an obvious thing. But you go on Wikipedia, they never even talk about this distinction or even how important it is or how useful it is. or how useful it is. Like, the entire Linux kernel is developed around these intrusive link lists. Because guess what?
Starting point is 01:46:45 If they're intrusive, you can actually embed multiple lists within the data structure and it can all be part of multiple different lists. When if it's extrusive, it can only be part of one. And you've got this other problem is like, it's now a container. It's actually less flexible. So you have, it's like, but where would they discuss that on Wikipedia? Because it's not, I bet it's, again, it might be wrong. I haven't found a journal entry for it.
Starting point is 01:47:07 Yeah. But it's just these little things where it's like, as I keep saying, the wrong domain for all of this. The irony of all that Wikipedia has clearly been developed through programming. And the thing it's applying its standards to does not work the thing that makes it even exist. Oh, well. It's also clear that at least a few people had like an axe to around with you. You know, the outspoken persona of Ginger Bill as. if a cult leader. I know. I love that. It's hilarious.
Starting point is 01:47:46 Firstly, a persona of Ginger Bill. No, my name is Bill, and I'm Ginger. The probably camera's not picking up my ginger beard, but, yeah, that's not a persona. That's just called a nickname that I've had from school. Yeah, that's all it is. I could say my real name, but it's like the most common name you could possibly get. So there's no point. I think it was on the article anyway.
Starting point is 01:48:10 I'm really bad when I recommend other languages to people to use. and I even tell people actively never to use Odin sometimes. So I think I'm the worst cult leader known to man. It's like, don't join my cult. Please don't. It's like what? Again, I think some people just don't like me, which is fine. I don't want everyone to please everyone.
Starting point is 01:48:28 But I bet sometimes it's been deleted because someone really just doesn't like me. Which means then it's nothing about notability. You just don't like me. Could be. I don't know. Who knows? Who knows? Yeah.
Starting point is 01:48:43 Well, there is a, there is a book. There is a book. The Oden book. Yes, there is a book. But it's self-published. That's the problem. Yes. Yeah, there's the problem.
Starting point is 01:48:56 I know. Is the Oden book actually, I, I know there's a quote here saying. It's not in physical form yet, but I know that Carl Zelensky is thinking about doing it in physical. It's just, it's very expensive.
Starting point is 01:49:05 Even if it was non-self-published, it's still very expensive, especially getting all the typesetting correct as well. It's like, it's actually a real difficult thing to type-setting. And I remember I'm talking. about how being how annoyed it was trying to just do type setting. Is it worth giving the book a read?
Starting point is 01:49:23 The book's really good actually, yeah. It is actually a really good book. This is one of those things where he does go explains everything, kind of a language, kind of goes over how to do things. Much better than say the Oden Ovi, but he's actually a proper tutorial kind of book to read. So, yeah, Odenbook.com. By the way, I don't get any money out of this, clearly. It all goes to the author of Carl's Lenzhen.
Starting point is 01:49:44 ski. It is a good book. And it's a very nicely formatted book as well. It's very easy. You've got effectively just simple things with notes in the columns and it's nicely done. It really is nicely done. Is there anything else you really wanted to
Starting point is 01:50:02 talk about? Like, we kind of touched on most things I wanted to get to here. Yeah. And me ranting randomly in places. Yeah, those are the fun ones. I enjoy that. Yeah. But now, I don't know, yeah.
Starting point is 01:50:18 So we've kind of talked about everything over everywhere. I mean, I could just say usually just, like, if you're interested in Odin, and you want an alternative to see, that just keeps you sane. Like, I've lost all my hair from working in C++, so you don't have to. Yeah, that's just, as Odin for you. Give it, if you go, if you enjoy it, it's wonderful. If you don't, that's fine as well. Yeah.
Starting point is 01:50:44 Well, if somebody wants to, like, try out. playing it, yeah. If someone was like try out Odin get started with it, like, what would you recommend someone who's like, I know it's hard to really say from someone who's been using it for so long developing it, but like what do a lot of people tend to
Starting point is 01:50:58 encourage people to look at for getting started? It depends on what you want to do, literally. So if you want to make a game, sure, you do games, some people like using Raylib because it's very quick to prototype. People even published literally the published games on Steam now. There's quite a few actually. We're just collecting a list just to make sure like
Starting point is 01:51:16 Oh, here's a few. And some that are coming out soon. So it's quite a few, like literally a few dozen now at this point, which is pretty cool. But if you want to do other things of the tooling, you may want to make your own little compiler of stuff, or you may want to make your own little processing stuff. I mean, a few months back, I made my own website generator in Odin. And it took me like six hours.
Starting point is 01:51:37 All just for another, Odin, made my entire blog runs on it. Effectively, like, generated, just HTML. It's static. is all I needed. And the reason I did it is because I didn't want to... Well, I was using Go Hugo, which is a thing... Yeah, Hugo's quite a nice little tool. It's great.
Starting point is 01:51:54 We use the actual Made in Odin website, by the way. But for my blog, I thought, it's a bit overkill, right? It's just a bit, like, I don't need any of this. So I just wrote my own one. It's just a fun, like Sunday afternoon kind of thing. And it was, it just works. Like, I forget people, some people just forget that you can just do things. Just for fun.
Starting point is 01:52:12 And it's easy as well sometimes. Yeah, that's a, that's, yeah, you don't actually have, people are so focused on like hyper-optimizing their time and like, make sure your time is valuable. You can just, you can just, you can just, you can just, yeah, just do things. It's fun. And even just, it doesn't even have to, again, I made a website generator. Again, six hours, I probably in total, probably spent 12, but those extra six were probably polishing things off. Like, I want to, or make sure this is correct. but otherwise it's yeah I think
Starting point is 01:52:44 again a lot of people think they have to ask permission to do things as well it's a real big problem like I've seen a lot of programs like oh I need to ask permission to do it just go do it no one's going to stop you and guess what you may learn something you may not be able to do it you may be able to do it
Starting point is 01:52:58 just have fun learn don't take it too seriously yeah yeah I'm pretty much just pretty much just agree there It was a pleasure to have you on. This was fun. No, this is pleasure as well, Brody. Thank you very much. It's been good. Talk, short. Sorry if I'm, again, sorry if I'm ranting too much, but it's been fun.
Starting point is 01:53:21 I know, it's so good. As I said, I enjoy the rant episodes. I enjoy going down these random, these random tangents. It's always a lot of fun for me. Yeah. If you want to come back on and do another one at some point, love to have you back on. Yeah, it would be fun. It would be nice fun, yeah. So if anyone wants... have a controversial I got myself on next time because there's
Starting point is 01:53:40 always something yeah we'll see we'll see how we go so if people want to check out Odin or check out anything you do
Starting point is 01:53:50 where can they go if you'll try the Odin language you can probably go to W WW full stop Odin Lang
Starting point is 01:54:00 full stop ORG We got an org that's nice that's an OJ I'm like yeah Also, that reference, how I've said it,
Starting point is 01:54:08 there's going to be like two people who understand that reference with the web, same websites. But that's a nice thing. You're always checking me out on Twitter if you want. I'm at the Ginger Bill, obviously. On YouTube as well, under, I guess,
Starting point is 01:54:25 Ginger Games is, I think, still the name of the channel or Ginger Bill at this point. I did it when I was playing games back in the day. I used to be a Minecraft streamer. Yeah, yeah, yeah. Yeah. My biggest video's still got like 600,000 views or something stupid. That was one of those.
Starting point is 01:54:42 Popular. Oh my God. Yeah. Yeah, you found me. There you go. That's going back quite a bit now. It's what 15 years ago, I think? Hello?
Starting point is 01:54:55 Oh my God, it's Minecraft beta. Oh. Oh, yeah. I haven't played Minecraft in a very long time, probably over a decade now. That's how just stopped playing it I've even lost access to my account because it was in that transition period
Starting point is 01:55:12 and I couldn't remember my password and it literally like I thought it was now lost to time that original account back from when I was playing since Alpha Yeah Yeah you had to like migrate the account Like when Microsoft boarded you'd like migrate it to like
Starting point is 01:55:26 I didn't even bother Because I hadn't even used it in that long And when I tried to one down I went I don't remember the password The old one And now I can't migrate it because I lost the time Yeah
Starting point is 01:55:35 Yeah, yeah. So, oh, well, maybe I could contact Microsoft and go, hey, could I get this back? This is proof of me. Look, can you see this video? This is me. But no. Yeah. Well, I don't think it makes a difference.
Starting point is 01:55:48 Yeah. Anything else to direct people to, or is that pretty much it? Also, of course, my job as well, which is Djanga Effects, all the amazing real-time stuff. So that'll be Mbogen, Lougen, Liquidgen, and Geogen. They all really good. So that's jangorefx.com. If you happen to need... But the main thing, we'll just be...
Starting point is 01:56:07 Fire, water, earth effects of various sorts. Yeah, some procedural generation for games, which is pretty cool. That's what Lujan is, which is actually pretty cool. It really is, actually. But yeah, that's it. So other than that, you've got Djangre Effects, my general Twitter and YouTube. And of course, the Odin website at W-W-W-W-Fall-Stop. Oden Lang, full-stop, O-R-G.
Starting point is 01:56:32 I don't get the reference, but we'll go with it. No wonder. This is like a very off-stop. your reference, it's brilliant. I might send you it later. Yeah, yeah, we're good, we're good. Again, and nothing else you wanted to mention, that it? No, that should be fine, yeah.
Starting point is 01:56:49 Okay. Check out, Erin. That's all I can say. Sweet. I'll do my outro and then we'll sign off. Yeah, thank you. Okay. My main channel is Brody-Rupperson. I do Linux videos there six-ish days a week.
Starting point is 01:57:02 I have streamed there before. It's been a few months. I'll need to get around to doing that at some point. I've got the gaming channel at Brody on games. right now I'll be playing through the absolute garbage that is Shenmu 3. I don't know why the game ever came out. And also a much better game, Metal Gear Solid 2. And I've got the...
Starting point is 01:57:21 If you're watching the video version of this, you find the audio version of basically every podcast platform that is Tech Over T. And the video is on YouTube. Tech Over Tee. We have a video on Spotify as well. There is an RSS feed if you like RSS feeds. Yeah. How do you want to sign us off?
Starting point is 01:57:36 What do you want to say? Thank you very much for having me on, Brody. This is absolutely wonderful. Absolutely pleasure. And hopefully I can see the next podcast when it comes on for whoever's going to be on next. It'll be a good, enjoyable thing. Awesome. You know what? I like that outro. That was nice.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.