Become a Creator today!Start creating today - Share your story with the world!
Start for free
00:00:00
00:00:01
#63 - Bruce Durling image

#63 - Bruce Durling

defn
Avatar
73 Plays5 years ago
We got a chance to talk to Clojure community veteran Bruce Durling( London Clojure Community, ClojureBridge, ClojureX and more)about his Clojure Journey and more :)
Transcript

Mia's New Baby Announcement

00:00:15
Speaker
We have a little announcement to make with the first deaf and baby announced first. You need to have you need to have a pause for effect. Right. Okay. And then attention. We have an announcement to make. Please everyone be quiet for the forthcoming announcement. We have some sound effects VJ. Oh, yeah, right, right, right. We have the deaf and we have the first deaf and baby.
00:00:46
Speaker
Yes. There you go. Go ahead. Well, last week, last time on the show, we had Mia, Miss Praxis of the Butt. And she was a lazy recursive function, a lazy recursive person, sorry. But that's being realized now. So she's given birth to a healthy baby boy. So congratulations to Mia and her husband, and of course, to the little fella.
00:01:13
Speaker
Welcome to the world. Welcome to the functional world. A big congratulations from our side as well. Yes, and congratulations to everyone. So on that happy note, let's start the show with the secret announcer that we had, or the announcing person. What do you call these people? Who make these things? Announcers? The people on the Tanois. Attention, all people on Tanois, please come to the announcement booth.
00:01:45
Speaker
Perfect. The Tanoy person. There's probably a politically correct version of the Tanoy person. Yeah. Yeah. The Tanoyist. This is like the episode number 63 with that person who is named Mr. Bruce. Welcome to Deaf and Bruce. Oh, yeah. Thank you. Hello. Morning.
00:02:06
Speaker
Good morning. It is universal greeting time. Yes. So you do realize when we end, we have to say good night, though. Yes, absolutely. Absolutely. Yeah. We have been recently like, I said chatting to Bruce on the closure in slack. It's a very asynchronous, slow moving chat, but everyone apparently you have to say as soon as you come, they have to say morning.
00:02:32
Speaker
Well, it just lets you know that there are other people around, that the channel's not completely dead, that there's a bit of community going on. And especially with the off-topic channels, because you don't come in and ask questions on Closure Europe or Closure London or something like that. You just say,
00:02:49
Speaker
Apparently you do though, recently, you know, people have been falling foul of that

Clojure Community Engagement

00:02:53
Speaker
rule, but we have to kick them off, Bruce. Being on topic is off topic, which is, you know, which is fine. God damn it. This podcast is not about that. Yeah. I mean, to get to the point where we did have to take the cycling off to another channel though, so there's a Brompton channel that I say good morning on as well.
00:03:13
Speaker
All right. So not everybody there has a Brompton and I don't have a Brompton at the moment because my Brompton's in the shop. So, but every, everybody, so I say good morning on Closure Europe and I say good morning on Brompton. Is it Closure Brompton or just Brompton? It's just Brompton. Not, not, not, not everything on the Closure area in Slack starts with Closure, just most things. Well, I mean, you know, there is a cycle function. So I guess, you know, it's kind of on top. Yeah.
00:03:45
Speaker
There you are Bruce Bruce Bruce Bruce, legend, wait for it. Dairy. Wow. It's nice to know I'm dairy. I'm definitely very cheesy. Yeah. Well, there's a vegan rewrite of that where it's legend, wait for it. Non-dairy. Well, good. You've heard that one before, I think Bruce. I haven't know that that's a completely new one on me.
00:04:11
Speaker
I have no idea what you guys are talking about. It's a thing from how I met your mother. It's an American series, How I Met Your Mother. And the guy in there, who's a real idiot, he's a real asshole, is legend. Wait for it, Derry. Oh yeah, Derry. Yeah, yeah, yeah. So anyway, okay. I couldn't imagine you making any contemporary references. That's why I was getting confused.
00:04:42
Speaker
Usually it is references or I don't know, Victorian usually. So like, what is it talking about? If they're Victorian, that's better than me. I always get told off because I always bring up medieval references. All right. Well, let's get medieval. Yes. That always sounds a bit threatening, you know, reminds me of the reservoir dogs. Was it reservoir dogs? I'm going to get medieval on his ass. Yeah.
00:05:09
Speaker
So we need to prepare for the duo. Is it still Victorian? Nah, it should be medieval, right? Like knights fighting with long poles and shit and whatnot. Yeah, sure. People can fight at any point. I mean, stupid fighting is always stupid. It's with us since the beginning.
00:05:28
Speaker
Yeah. Okay. So we'll, we'll, we'll get into medieval flight. I think, I think the jam sting though was more silly than stupid. You know, I mean, it was, I know it was serious in some respects, but it was like, it looked very silly. You know, you can't, I mean, if you just think about it logically, it's kind of crazy, really big pointy sticks on a horse with. Yeah. Yeah. Yeah. What, what is it called again? Jousting. Jousting. Jousting. Yeah.
00:05:53
Speaker
Okay. Well, the name says it all. The name is already silly. So what the hell are you supposed to do? Like on a horse with a long stick and then poke each other, right? Exactly. Yeah. It was, it was, it was meant to be the reason why Henry VIII, um, was became the sort of big guy that he became in the end and a jousting injury. Okay. Which was a bit crazy for a King to be a jouster, but you know, there we are. Those were the medieval days or the Tudor days.
00:06:22
Speaker
Well, he used to like to wrestle and stuff like that as well, but he demanded that he won all the time. So when he wrestled the king of France and the king of France beat him, he was terribly, terribly upset.
00:06:32
Speaker
Yeah, it's a bit like, you know, like bringing up to my era. Idi Amin, you know, being the Ugandan swimming champion. Basically the same. So many things haven't changed. So welcome to medieval podcast number 63, where we have two medieval experts. I don't know if you're from that age or whatever, but I know Bruce, you've been in the industry for since the dark ages. Not quite that long. Yeah.
00:07:03
Speaker
But you have seen some darker times, I suppose, before coming into the closure. I have. I have indeed. I mean, you know, I was a Salesforce consultant

Bruce's Clojure Journey

00:07:12
Speaker
for a while. That's why I go. Oh, yes. Yes. Oh, fuck. Okay. Well, let's get the first. Oh, fuck out of the way.
00:07:22
Speaker
So let's just begin from the beginning about how did you get into closure from from all the weird places. So, so it's actually this force. I was actually looking that up and it was so I was. Somebody was looking it up when you say you're looking it up. You mean you had to look it up on the Internet? No, no, no, no. I think I think he I think he was he was taking his horse like Gandalf and then just riding to that place and looking at all that. No, I know what happened.
00:07:49
Speaker
I, I, so I literally went back in my emails and I found the meeting invite, uh, the meetup for the talk Rich Hickey gave closure for Java programmers on the 12th of March, 2009 at skills matter when they were still on Secford street. Wow. So this is, this is going back, back a fair ways. And, uh, yeah, that was, I went to go hear Rich Hickey's talk. I was already,
00:08:17
Speaker
I'd already tried Scheme and tried Common Lisp and gotten a bit frustrated because I wanted to do things like XML and web programming. And it's great if you want to write your own XML and web programming libraries, which I didn't want to do. Yeah. And I'd looked at a couple of things like that out in the world. Yeah. Yeah. And I tried, I tried a couple of Java.
00:08:42
Speaker
lisps and none of them were particularly nice, but I went, I went to Richard's talk, um, in London and thought it was really cool. And then I forget when the first dojo was the first closure dojo was, but it was after the first Python dojo. And I went to that and that was organized by Alex Gordellis at ThoughtWorks. And that would have been 2009. And it was at the end of the first one, Alex said he wasn't going to do another one.
00:09:11
Speaker
and Robert Ries came up because he knew me from the Python dojo. He came up and tricked me into running most of the rest of them until I stopped running them and then other people took them over. So that's what it was. It was basically a talk, a bit of interest and being tricked by Robert Ries. So it's all his fault. So you can get him on it. You can accuse him and you say, why did he do that mean thing to Bruce?
00:09:37
Speaker
Yeah. Make you make your own Python dojo, right? So there were a whole bunch of other people involved with the Python dojo, but it was a closure dojo he made me run, but he tricked me into running. Nice. So I started running that every month and we ran dojos for the closure ends for
00:09:56
Speaker
Gosh, I can't remember how long. And then eventually we started doing talks at SkillsMatter because I knew Wendy at SkillsMatter said, Hey, can we come in and do the talk once a month? And I knew from having run some things before that the magic is picking a, picking a stable date. You pick a stable date and then you've got the venue and then you just make everything else work around that. Yeah. Yeah.
00:10:19
Speaker
So you're involved in the community building since the beginning then, pretty much in London, because it became pretty much like hotspot for Closure, right? Yeah, I think so. It started there, mostly. Well, I mean, I remember when I first started Closure, there was all these pictures of Bruce all over the place. I don't know who Bruce was, but Bruce was everywhere. So Bruce was like a legend in his own lunchtime. And the people were iconifying you, Bruce.
00:10:47
Speaker
You're like a pop star in the closure world, you know? Like the Brad Pitt of closure. Figure of abuse, I think. Thankfully, that particular end joke seems to have died, which is quite good.
00:11:13
Speaker
Because a lot of people said, who's that guy? Everybody's laughing at that guy on the screen. We don't know who it is. Because it mostly started coming up when I wasn't as involved in doing stuff as well. When it was really John Stevenson, who you interviewed before, who was mostly organizing by that point. So it's like, who is this person who's not been doing anything and been at home burned out and depressed and not actually coming to any events?
00:11:41
Speaker
some legend, you know. Yeah, so definitely mythic, and sort of possibly not existing. There's not any proof that he exists, you know, he's just some origin story.
00:12:01
Speaker
So from Salesforce and then you started your closure journey, but now you are already working with closure for so long, right? And building your company in closure. So can you tell us about what you're building and what you're busy with?
00:12:15
Speaker
Yeah, so we build models in Clojure with a little bit of R sometimes, but mostly in Clojure. Machine learning and data science models. Yeah, so in machine learning and data science in particular, so the very specific thing is in predicting demand for special educational needs.
00:12:40
Speaker
and predicting demand for looked after children in children's social care. Basically looking at historical data from local councils and then saying, right, given this historical data, this is what we think is going to happen in the future. It's sort of the opposite of big data. It's very small data. It's stuff that's in Excel spreadsheets and it's taking data they already have over the past however many years and actually making it so that local

Clojure for Data Science in Education

00:13:04
Speaker
authorities don't go bust and
00:13:06
Speaker
can still make sure that kids have a good education and still make sure that kids get the social care they need. Isn't it the government's job to make sure that they don't go bust? Well, they do, but they call us in to help them do that because it's pretty complicated stuff. And the people who are running it are people who understand how to give kids good results.
00:13:36
Speaker
You know, they, they understand if they, you know, if they, if they do this thing with a child, this child will not suffer. And then what we do is we say, okay, well, if you're going to do these things, and that means these kids are going to go down these pathways and that means it's going to cost us much. And when, when they go say, Hey, I need more money. And they say, well, why do you need more money? It's they go, well, well, just cause we need more money. It's like, well come up with a budget and they're not budget experts. Yeah. Yeah. But you know, we're, we're experts in forecasting. So we do that.
00:14:06
Speaker
Because I've noticed that, I mean, the special educational needs, I mean, it's slightly off topic, but it's on topic for what you're doing. But like my sister, I mean, it's a bit personal, I guess, my sister, when we were growing up, she had a Down syndrome. And obviously she had special educational needs. And my nephew is autistic. And it seems to me like now there's like less
00:14:31
Speaker
I don't want to get into too many reasons why there are fewer mentally handicapped people. I think there are well-known reasons for that. But there's less demand for those kind of services, but more demand for services for autistic people in the sort of last 20 years, I guess. Is that the sort of thing that you forecast over those kind of types of needs as well as the
00:14:57
Speaker
Yeah, types of needs and what sort of educational setting they'll be in. So that's the kind of thing that we do is we take sort of age and what type of need you have, you know, social, emotional, mental health, profound, you know, learning disabilities, autism spectrum disorder, and then say, you know, you're going to be in a mainstream school,
00:15:16
Speaker
you're going to be in a send unit in a mainstream school or you're going to be in a special school. And then we take all those things from the historical data and say, right, here's what's happened in history. Here's what's going to happen in the future and combine it with population projections from Office of National Statistics or from the customers themselves or from some third party and then say, this is what we think is going to happen to you over the next five to 10 years.
00:15:40
Speaker
And is that all based on like UK data or do you also combine it with like European or global data as well to get a sort of context?
00:15:48
Speaker
So it's English data for the most part, but it's certainly UK data that we do with. And it's mostly, it's the internal data that the local authorities hold. So they give us their data, but it's really stripped down. It's literally just this person went from this place to this place in this year and we traced it over that. So we try to minimize any re-identification risk that might be in there because we don't need it.
00:16:16
Speaker
We can do it with a very small stripped down data set and still give them really good projections.
00:16:23
Speaker
Well, it sounds like a really beautiful worthwhile task. Well, I think that was sort of the thing that I sort of done having done a lot of stuff in banking and done through 2008 as well and done 2007, 2008. I mean, I was actually on holiday when the money market stuff all started crashing in 2007 that sort of led to a lot of the later 2008 crash.
00:16:54
Speaker
and some stuff in media as well. It's a case of trying to use my powers for good, I think is where I've been at with it. There's been a fair amount of trying to survive to that point because my goodness is this hill cycle long in local authority stuff.
00:17:13
Speaker
But, uh, yeah, but it's good to get the, uh, yeah. Absolutely. Maybe I should serve that service. I wonder how long it would take to sell that. And the solution that you're building or the modeling that you're doing, is it specific to this, this domain, like education, or is it something, so your company looks at different sorts of social problems and issues?
00:17:42
Speaker
So what we're doing at the moment is we basically each year we say, right, what are the things that we want to look at in particular that we want to choose to model? There are a lot of people who do sort of the place side of things and do things on planning roads and transport and business tax neighborhoods and stuff like that. And we're on the people side of things. So it's things like social care and children's social care and education and stuff like that.
00:18:09
Speaker
So each year we say, right, what's the next thing that we think that we can help people with where there's an impact on the council, they have to make decisions on it, and being able to do some sort of forecast is important enough that they'll want to do it and tricky enough that they can't do it themselves. The special education model over the last couple of years, we've
00:18:34
Speaker
I think we spent like half a million on it. And it doesn't make sense for every local authority to spend half a million pounds trying to develop, you know, a model to do it that we can sell for them for a lot cheaper.
00:18:50
Speaker
And also it makes sense when you do this for multiple, what do they call it? Local authority. So it's local government. So it's counties and metropolitan boroughs. Yeah, exactly. Because you're getting a lot of domain specific data that you can use and the intelligence that you can give better.
00:19:08
Speaker
Yeah, we don't collect in all the data for it. So obviously we learn as a company from it, but it's not like we have some massive data set of all the data from everybody other than there's a lot of open data around it and we study the stuff from the open data. But we're not sort of in the building a massive data aggregation business. We're very much in the, you know, give us your data and then we'll help you project it. And then we'll help you go through scenarios of, you know,
00:19:34
Speaker
What if you build a new school or what if you hire new foster carers or something like that? And how is that going to work out as far as your budget goes and as far as the outcomes you want? Yeah. And also maybe you can also explain things like, not explain, but if one council goes a bit further with the project, then you can already have that feedback and then tell other people that, hey, they implemented this one and it became better. Yeah. Yeah, absolutely.
00:20:00
Speaker
Yeah, and they talk to each other about that. I mean, you know, almost the first thing they say whenever they, you know, whenever we go and try to sell them something and say, Oh, can we talk to the other people you worked with to which we say yes.
00:20:12
Speaker
This seems like a really socially conscious and useful project. That was the idea. It's a bit different than, oh, let's build another, I don't know, fucking social network or whatnot and some other thing. Advertising and surveillance might be easier to pay the bills, but yeah.
00:20:35
Speaker
Is it like, do you, is it all like reporting or do you, is there like, maybe it's to your point, Vijay, is there a collaboration part of the platform or do they just use Slack or something to talk amongst themselves?
00:20:47
Speaker
Uh, you know, and then they're just, then you talk to them about the particular bits of data or is your platform. So, so it's, it's a fair amount of, so a lot of it is sort of email and the data is small enough that we're doing it on, on local machines. Um, you know, that are secure though, that the data is pretty safe by the time it gets to us. Um, so, you know, it's a lot of it is, you know, it looks basically like straight up consulting, but it's just, we reuse the same model.
00:21:16
Speaker
again and again and again and then approve it as we go along. It's all open source as well. It's all on the GitHub page. If anybody wants to see how it works, they can go in there. I'm still waiting to get some patches on those models. We've had some patches on some other things before, but nobody's come in and done the models. The nice thing about it as well is it produced stuff like Kixi stats as well. That was born out of that.
00:21:41
Speaker
So how did you pick closure for this then? When did you start actually this, this, this work? Uh, so this particular, so this particular work, which is the stuff that's been successful out of Mastodon Sea. So Mastodon Sea started in 2012 and when it was just me doing the tech and it was my foreign business partner Francine doing sort of the data site side of things and the sales and she was CEO and I was CTO. Um,
00:22:10
Speaker
I knew I wanted it to be enclosure because I knew I was going to be the one supporting it. And I knew that I could cover the most ground in an industrial strength way with the smallest team using these tools.

Joy & Productivity in Clojure Programming

00:22:30
Speaker
Basically, there are ways, particularly with data science. So we were doing data science and data engineering then. We still do some data engineering, but it's much more data science now.
00:22:40
Speaker
And you can do this stuff in Python, you can do this stuff in R, but doing it in Clojure can...
00:22:49
Speaker
There are a number of times where I would have broken other languages or would have been really slow in other languages to do the stuff I'm doing and I'm able to do it faster and in a more bulletproof way in Closure, so I'm pretty happy with that. And to be honest with you, it's fun. Closure's the most fun I've had programming since I learned Logo. And I think I was 11 then.
00:23:14
Speaker
Yeah, you're not wrong. I mean, this is the only reason I keep on programming, you know, and I'm teaching my son now out of programming closure. And he is, he is really liking it. We try to teach him or we tried to learn together to do some games when he was younger with, uh, swift and object. Well, it's your objective C and then swift and swift was a lot better than objective C, but still he never made a game. He never, he learned, he went, we went through the videos and we did some examples, but the game was never made.
00:23:44
Speaker
within like a couple of hours of closure is programming. And he's enjoying it. And I enjoy it. And I think like you say, even after a few years, it's still enjoyable. And that's unusual. Yeah. And going back and maintaining stuff is enjoyable. I mean, there are a lot of bits with a legacy code base that's been around for a long time. There are a lot of things you go back and you go, gosh, I really wish I could do that differently now. But I actually quite like going back
00:24:13
Speaker
and doing it differently. And everything is fundamentally understandable. I mean, there are some things that are a bit more convoluted than I would like them to be. And there's a little bit more to hold in my head, but there's no magic. There's not, oh, this is provided by the platform or this is provided by some framework I'm using or something like that. Or I've got some class that comes in that is really difficult to instantiate even as a mock.
00:24:40
Speaker
or something like that. Fundamentally, it's all, okay, right. I know at that point, I'm putting that data in and I'm getting that data out. And I know that that's where my bug is. So I can get in there and I can figure out what's going on with it. So it's fun and it lives well over time. And having worked on lots and lots of legacy systems over the years, there aren't a lot of systems I've seen where you can say that.
00:25:08
Speaker
Yeah. And what is the stack in general? Because obviously doing data science stuff enclosure is not like doing it in Python because there's like bazillion libraries available in Python, which is a de facto thing.

Evolution of Clojure's Data Science Libraries

00:25:21
Speaker
Of course, if you use R, I'm assuming there are enough things in R as well. But how do you compare that with other languages and then doing it in enclosure? Because it must be from the first principles pretty much.
00:25:34
Speaker
Yeah, sometimes. So having Kixi stats actually helps with an awful lot of that. So that's, I would say, the core of what we do. A lot of the stuff is finding the right distributions. It's basically training distributions from
00:25:51
Speaker
data and then using those distributions to simulate new things is most of what our models do. They take a small amount of data, learn distributions, and then take those distributions and then project out into the future what's going to happen. And Kixi Stats covers an awful lot of that. With some of the stuff we're doing at the moment, we're not quite there with some of the Kixi Stats stuff, so we're having to use some bits and pieces of R. But now that there's a
00:26:23
Speaker
Closure, sir. I'm not quite sure how to, it's C-L-O-J-I-S-R, which is the new Ruby, sorry, which is the new R Bridge rather than around the Ruby Bridge. It's the new R Bridge. And I think I'm going to have a good look at that now that seems to be settling down. So the cycloge stuff that's been going on lately has just been fantastic. And I'm really excited about the stuff that's going on there because it's
00:26:47
Speaker
because basically Python had the same problem ages and ages and ages ago where there were lots of different data science libraries out there that didn't work that well with each other and there were lots of different choices and there were a lot of confusion.
00:26:58
Speaker
and everybody went, ah, this is really annoying. And they got together and they did NumPy and SciPy. And that's basically what Closure is going through at the moment, having learned the lessons of NumPy and SciPy. So it's sort of the, it's a C sharp is to Java. I'm sort of hoping SciClosure is going to be to, um, to, you know, R and R and Python and stuff like that. And I think that's one of the things that's impressive about it as well is that they're taking a real,
00:27:28
Speaker
Closure being seen as a glue and and sort of a language on a platform as they're saying, you know a lot of the Data visualization stuff is hey vague is really good. Let's use that. Yeah, and there's yeah, there's Oz and sent a and Darkstar, which is basically, you know slurping some Jason and then put it through here and then get back some SVG So it's you know, that's from the really simple to you know big data exploration tools and
00:27:56
Speaker
Um, and then, you know, things like, uh, Oh, what's the name of the data frame library? I've completely forgotten, uh, Christian Nuremberg's library. Um,
00:28:08
Speaker
Oh, come on, you guys are supposed to help me out at this point. No, we don't. Oh, man. You're meant to be the data scientist. Me? What the hell? That's what you keep on telling me. I'm doing data science every day at work, you say. No, I'm doing data engineering. And the data science is mostly with Scala and that kind of new sense. So it's not really equivalent to closure stuff. So I'm only a lurker on closure data science stuff.
00:28:36
Speaker
I mean, it's really good for doing the data engineering stuff. I know I love doing. Yeah. Yeah. Yeah. Chris Nernberger. And so it's Tech Ascent. We'll look it up. Yeah.
00:28:51
Speaker
We'll send our interns to look it up before we continue with this show like we are doing this. You have interns? Wow. Oh, yeah. I didn't realize this was a... Oh, what do you think? This is like a professional show. It's been four years. Wow, man. Shit is going on.
00:29:10
Speaker
You saw the quality at the beginning. We were trying to figure out, okay, how does this shit work? Tech ML data set is the one. All the organizing for that actually happens on ZUIP. There's a little bit of conversation on Slack, but most of the real work happens on ZUIP. So just the stuff that's happening with Cyclos at the moment is just
00:29:35
Speaker
It's great. And people have gone through a lot of stuff. It started off with Encounter. And for a while, I had the commit bit on Encounter, which is a little bit terrifying. I'm very much a data engineer who has come to data science not the other way around. This shows your age when you say you have a commit bit. I don't think people understand this these days anymore. Oh, man.
00:30:02
Speaker
I know you're gonna tell them all I've got gray hair and this is why I agreed to do a podcast was there wasn't gonna be a video. No we're not gonna reveal everybody and all that stuff but if you say oh you know oh I commit bit set for this author then that's obviously takes you like a long way back to the you know see serious days so that's crazy.
00:30:23
Speaker
Oh man, I even remember before the CVS days. Oh yeah. Those were bad days, man. SCCS. SCCS and RCS and Visual Source Safe. That was a really bad one. Oh yeah. Maybe we should stay in the happy closure line between the cozy provinces.
00:30:44
Speaker
Everybody going into Telnet on the same server and editing files in SCCS and then kicking off a C++ build that takes three hours. And then somebody changes one of the files halfway through. Yeah. Good times.
00:31:03
Speaker
And I remember like somebody checks out some shit from visual source safe and then disappears. Yeah. And so they got it locked and you can't do anything about it. Yeah, exactly. You're completely fucked. And the weird thing is it is still a thing on SharePoint. I think until, I don't know, whatever. Yeah, but everybody knows SharePoint is evil. That's true. What was the other one that was like visual source safe? What a force.
00:31:26
Speaker
Perforce wasn't too bad, actually. BitKeeper? No, BitKeeper was the one that... It was a centralized one that had a sort of... No, it wasn't. It was a closed source thing. Oh, okay. I don't have much... Anyway, it doesn't matter. The history of the matter.
00:31:45
Speaker
I mean, the funny thing is, I mean, I don't know about you, how you feel about this, but I feel like, yeah, I mean, I quite liked SCCS for all of its pins in the asset, but it was okay. Simple, I understood it. All this stuff about diffing, I mean, basically, that's all it was. It was just a diff engine and that's what most of them are anyway. And it's just kind of like, yeah, I get it. It was simple. It worked for many, many years.
00:32:11
Speaker
And then we got into all this clear case was the thing I was thinking. Oh, yeah, clearly horrible thing But you know and all these things all started to become like products and it became very complicated You know, everyone wanted something more complicated more Yeah, more difficult really so it was so and it still feels to me like it's getting that way like it doesn't seem nice to me It seems in fact, it seems fucking horrible to me. That's just that's just cuz you don't use magic man. I
00:32:38
Speaker
Exactly, yeah. You don't use Emacs with... Yeah. You don't use Emacs with Mac. That's the problem. It's like every time I try eating something with a fork and then stab myself in the eye with a spoon, I don't like that either. But you don't have to do it like that. There are other ways.
00:32:55
Speaker
Yes. Yeah, but that's like putting peanut butter on poop. I'm not going to eat that sandwich either. Because the fundamentals are sound. Just because you can make a spike to drive into your head with steel and you can make a nice handy spoon with it doesn't make steel a bad thing.
00:33:14
Speaker
I agree. The core is pretty good, but the UX is fucking horrible with Git. I think that is the problem. The whole command line is just a weird fucked up mess of weird commands. You just say, OK, you can modify something, or you want to do some combined commits together. What is the command? Rebase. OK, everything is fucking a rebase.
00:33:39
Speaker
And that's just mental. And I think that's what they're changing slowly now, right? Because it used to be checkout for branches, checkout for, you know, hash commits and checkups for whatever. Now they're slowly turning that to switching. So you can just do git switch now instead of saying checkout. Yeah, see, I really, I do absolutely nothing with git command line. So I know none of this. But the other thing about git though, the other thing about git is that now we've got like, we've got like, um,
00:34:09
Speaker
There is a sort of thing on top of Git. There is Git, which everyone kind of, I mean, I hate it. I'm sorry, but you know, I get, I know it gets the job done. I understand that, but you know, I don't have to like it. I don't have to think it's, it's nice UX or whatever, you know, it definitely has some nice properties, you know, the whole, the concept of recursive hashing is obviously correct. You know, and that is, you know, I'm a big believer in that.
00:34:34
Speaker
We use it at work. It's no problem. Recursive hashing is the dog's bollocks. I love it. But I hate Git anyway. Well, my point is now you've got Git Hub. You've got Git Hub. Git Hub changes Git and makes it nicer, but also adds a whole bunch of things like pull requests, which don't exist in Git. But apparently they do, because now GitLab has them and you kind of like even SourceHut has to have them.
00:35:02
Speaker
Yeah, yeah. Yeah, I mean, that's a problem, I think, is that now we've got like, we've got, we've got gates and we've got like the culture, we've got everything. It's difficult to know what the hell Git is anymore, you know, yeah, apart from something. That is because people refuse to use emails and patches, you know, they just want a nice clickety green button to click and then just go home. And, you know, that's the whole whole problem with
00:35:28
Speaker
most of the shit. Anyway. Also, you know, you're never going to make money that a VC wants you to make by doing something distributed. I mean, that's why. Exactly. That's why there's so few protocols nowadays. I miss the good old days of, hey, there's a cool new protocol that you can do something with. This one's called hypertext transfer protocol. And that's pretty neat.
00:35:46
Speaker
Yeah, but I thought Git was going to be a nice protocol. In theory, it didn't have a golden master. It was just meant to be like, amongst everyone. Git does have a nice protocol and you can connect to a Git server via SSH and do interesting stuff with it. Yeah, absolutely. It's just a shame that
00:36:07
Speaker
It doesn't blossom, if you know what I mean. It's a bit like all of these things, Facebook or whatever, they've all become these big centralized services. So let's hope in the future that these essentially distributed protocols actually get distributed. But there is version control problem that is solved by Git, but there is this whole mess of
00:36:31
Speaker
software configuration management problem. It's not solved by Git, by the way. That's my point. No, but Rich Hickey had this version control isn't even solved. Rich Hickey had this point about Git, which is that it's line-based. And actually, that's a real bullshit, because having a language-based version management system would be a lot better. I mean, the fact that I was talking about SSS, it's all like plus-minus, plus-minus. That's what it is. It just diffs on text files, which is, you know,
00:37:00
Speaker
That is your granddad's gift. I mean, you know, it's ridiculous. So having worked in, gosh, what was it? Visual age. That was fun. So no, no, no. Visual age for small talk.
00:37:15
Speaker
Oh, wow. Okay. And also the very first visual age for Java, which was very small talk like in that you didn't have versions, you had an image that you went and created a class and then you added methods to that class. And then you could play with that, but it was all very much more image-based. And
00:37:39
Speaker
The real problem then was I'd been damaged enough by Unix and grep and diff and things like that, that all of a sudden having that entire toolset taken away from me.
00:37:49
Speaker
was really, really frustrating. So while text is a terrible way of doing things, you know, it's a bit like democracy. It's like, you know, it's the least worst way of sorting anything out. Well, don't you think that things like, you know, things like JQ even are like, they're entering the command line world.
00:38:11
Speaker
You know, but there's still, there's still, there's still, there's still things are slowly become more and more. I know there's still text, but, but the point is that it's like, it's, it's aware of some, uh, data structures. Yeah. I'm very happy. I'm very happy to have sugar and interpretation.
00:38:28
Speaker
on my text. It's just I want to be able to go back down to the text when I want to. And again, I think this sort of before coming to Closure, it's sort of coming to particularly free software, I would say, for all the wonderfully problematic things that the free software community has and that it's different from the many problematic things that the open source community has in it. I came to that from having been burned by proprietary software initially by Apple,
00:38:58
Speaker
given that one of the first computers I had to go on was my dad's Apple 3, which doesn't really have a successor. There was no successor to the Apple 3 and an Apple 2C for which there was no successor either.
00:39:13
Speaker
So being constantly dumped by Apple and then having done some database stuff in Borland Paradox and then Microsoft Fox Pro and having those things basically disappear out from underneath me and having writing going back to WordPerfect 5.1 and having that disappear underneath me. I'm a big believer in free software and I'm a big believer in text. It's like the stuff I write in text.
00:39:41
Speaker
hangs around I think that I think that's why I think that's why I think a lot of the reason why I got under less was the idea that if I really really needed to that I could create my own and get going again yeah I'm not against text that was never my point I mean you know my point is just that if you definitely want text so we're agreed that all right at the fun at the fundamental level text it's always yeah yeah
00:40:09
Speaker
But there should be some interpretation these days for something that's meant to be a source code management system that is not aware of any language part of the source code that it's managing seems pretty dumb is my point. Are there some plugins now that to actually do that though? Not the highlight things and stuff like that, but right.
00:40:32
Speaker
But we do have, I think when Richek announced Datomic, there was this codec thing that he announced to keep the whole source code, like function being the unit or whatever, like that level pretty much. So, but this is, if we make it language specific, then I think in our world, at least we are arguing for Lisp everywhere, right? From bottom to top.
00:40:55
Speaker
No, I'm just saying you have to have plugins that can be language aware. So Git should be language aware. That's my point. Not that it should be, you know, everything should be closed. I'm not an Emacs block, you know, come on. I'm not saying everything should be one thing.
00:41:14
Speaker
Oh, I don't know if you asked that question yet. No, that is the next question. So Bruce, I know it's a rhetorical question. So let's, let's, you know, what do you mean? E-max or some other shit? I think, I think all, I think all tech editors are great and people should use what they feel most comfortable in. I feel, I feel most comfortable in E-max and have felt most comfortable in E-max for
00:41:46
Speaker
for longer than I've been doing Clojure. And I think a lot of it was a general frustration with the languages I was using and Emacs having very good support as I got into them, basically. So it was a great way of exploring new languages. Almost always one of the first things was somebody do a mode
00:42:06
Speaker
For the language in a max so you can get syntax highlighting go. Oh that oh right so I need to learn those keywords I need to learn that syntax or if you know if you get the syntax wrong as you're writing stuff out as you're learning the language You know that sort of you know before linters, you know There's some syntax highlighters, you know showing you that your syntax isn't right because the highlighting is all wrong. You forgot, you know, I
00:42:26
Speaker
to close a quote or something like that before I knew par edit. I mean, I don't ever worry about closing a quote nowadays. Unless I copy and paste things really badly, which has happened sometimes. And then the syntax high letter remind me, as will aggressive indent, which is always good. It's always great when you paste something wrong in an aggressive and then go, barks all over your buffer. You like an editor that's aggressive. Absolutely.
00:42:59
Speaker
Well, only because I ask it to be. I say, would you be my strict friend place? And I say, sure. But the nice thing is that I can say to it, would you stop being my strict friend, please, because I need to actually untangle this now.
00:43:19
Speaker
which I suppose, and that's why I like a dynamically type language like Clojure as well, is it allows me to explore the space I'm in. A lot of times, I'm given a pile. Every time I get a new client, I get a pile of Excel files that are almost never formatted the way I asked them to be.
00:43:42
Speaker
And so the first thing I'm always doing is I'm always poking at and going, OK, right. How do I turn this data into the format I need it to be?
00:43:50
Speaker
And so being able to create languages that are not to type or being able to create programs that are not to type correct and move them more towards type correctness as I go on is exactly what I need to be able to do with my code. And I've got special dispensation from Haskellers for doing language like this because they say, yeah, given what you do, I wouldn't do Haskell either. Yeah. Oh, man. You're blessed.
00:44:15
Speaker
So that's why Emacs, that's why Closure, apart from being fun.

Flexibility & Support in Clojure & Emacs

00:44:23
Speaker
They're flexible tools that give me strictness when I want it, but allow me to turn it off when I don't, and give me massive communities of people that are working on it, which is the other thing I like about Closure. I like that it's hosted on the JVM, and before I did Salesforce, I did a lot of Java.
00:44:42
Speaker
So I know my way around the JVM side of things, you know, know my way around Java so I can wrap up any Java library I want because he interrupts really good. Yeah. So. Yeah. Do you also use the GLOGE script a lot in your projects? So I have done in the past, given that we're not shipping anything really in the way of websites at the moment. I mean, I ship a lot of graphics at the moment, but they're all static pings that are put into slide decks.
00:45:11
Speaker
Um, so I don't really ship websites, but when we were shipping websites, yeah, it did a lot of, did a lot of closer script down. So I've written, I've used, I did on men version version one. That was exciting. Yeah. Yeah. The quick question for you and going back to your Kings and SVGs and things, do you have a kind of rebel workflow or a kind of dynamic workflow for those things too? Uh, yeah. Yeah. Um, so I'm using CLJ plot for all that at the moment.
00:45:42
Speaker
rather than the Vega stuff, partly because the Dark Star stuff came out after I needed a way of producing a lot of PNGs really quickly. So given the most of the stuff I do is sort of batch produce 300 PNG files based on the splits of the data I already know I want every time to go and check it. CLJ plot's actually pretty good for that.
00:46:10
Speaker
And then there's a view function that just pops up a Java window that has the thing in it. I could view the PNGs. If I was doing literate program in Emacs, I could have a little OB closure block, produce the code, and then go and produce the PNG and then show the PNG in an Emacs buffer. And I've done that kind of stuff before.
00:46:35
Speaker
So you've been with the Clojure community, I think, almost like a dozen years now, almost. Well, 11, yeah. Yeah. Well, 2020 seems double so far. Yeah, OK. Well, then at least two cents. Only double? If we're talking proper time.
00:46:56
Speaker
In 2020, I've been doing closure now for three or four millennia, and it's lost to history how long I've been doing closure for. Yeah. So I think my question is more because you're involved in community, part of running Dojos in the past as well.

Inclusivity in the Clojure Community

00:47:14
Speaker
So how did you see from your point of view, as we said, London was one of the hotbed for closure, the breeding ground for closure stuff, first year of closure being there. And in the last 11 or so years, what is your view on the community and the language and evolution of this stuff?
00:47:24
Speaker
And
00:47:38
Speaker
I think the community is really good. I think the Closure community is really, really friendly and very welcome and very welcoming. As a community full stop, I think as a functional programming community and as a Lisp community, it's
00:47:58
Speaker
outrageously open. I think when it first was learning Clojure, it was things that made me realize it was a good lisp. One was when I did some training in Clojure, I got to ask, who would it have been? I think it might have been Stu Holloway. I got to ask him, is our map and reduce and filter the right things to use in Clojure?
00:48:27
Speaker
Because in a lot of lists, you have these things, but they say, oh, you can't use that because it's not performant. You have to use a loop and you have to do things all very iteratively in a very annoying way. And he said, no, we're always going to make sure this runs fast. The right thing, the right tool to reach for is always going to be app and filter and reduce and keep and all that stuff.
00:48:45
Speaker
And going through to transducers and core async and everything else, that's definitely a good bet. So that made me happy. So from a programming point of view, it was good. And then the other thing that made me really happy was from a community point of view,
00:49:00
Speaker
It's a closure in the very early days, really annoyed everybody in comp-laying Lisp, who thought it was a terrible betrayal of the Lisp heritage and the Lisp machine heritage, and they said they were going to have nothing to do with it. And when I realized that all of those jerks were going to stay over there and not come into closure, I knew closure was going to be a good Lisp to be in. Because of the lack of reader macros, is that where they're all barfed on it?
00:49:28
Speaker
So it was Reader Macros and it was being hosted on the JVM. I think were the two things that really got to people. Square brackets as well. Yeah. And how could you have anything other than parentheses?
00:49:45
Speaker
Um, yeah, yeah. And it sort of the, you know, throwing, throwing the toys out of the pram, you know, at that point, it's like, Oh, okay. Right. So that means that none of those really bad people who were really difficult to get by and complex are not going to come across this community. That's, that's really good. And, and I think, but you know, sort of, you know, being better than complex is a really low bar. Um,
00:50:14
Speaker
So, but, and I think Closure's done a lot better than that. It's not as diverse as I'd like it to be. You know, old dinosaurs like me still have, you know, problems in how we talk about things sometimes. And I mean, there's some things where it's like, I've said things in this, and it's like, you know, it's like, you know, I shouldn't be saying that because that's, you know, not, you know, terribly friendly to people, you know, who might have
00:50:38
Speaker
mental illness issues. And we should be welcoming to people with mental illness issues like me, you know, who occasionally has mental illness issues, you know, I mean, you know, an awful lot of, you know, my time as community has been with me being, you know, burned out and depressed and then coming back from it. So, you know,
00:50:54
Speaker
being open and accepting of, you know, people in all the different ways they are, as long as they're open, accepting the other people and aren't debating the humanity of the members of the people. I mean, that's a really frustrating thing about, you know, racist and bigots and homophobes and transphobes and all the rest of it is that, damn it, there's still people. So, but that to me is, you know,
00:51:25
Speaker
is certainly something that I felt that we strove for in London closure reigns in particular, which is really important when you're in a city as diverse as London, to be able to say, as long as you were okay with everybody who turns up being human, then you've got a place here in this community.
00:51:48
Speaker
If you're not okay with everybody here being human, then you don't have a place in this community and you can go away. But it is also because you were one of the people in the beginning of this Closure Community getting this upstart or starting up this community. So obviously the values that Closure Community has,
00:52:13
Speaker
those are contributed by you as well. So that's an awesome thing that you did as well because you and we spoke with John, all these people getting together and then preparing this fertile ground for making sure that
00:52:31
Speaker
Maybe it's not going to be complicated. Oh, God, I hope not. But this is created. You're one of the people, right? So that's really something that I appreciate. As I said before we started recording, I met you in the first ever thing and probably not met as in I don't think I'm going to. I'm not a guy who goes to people and then talk to people all the time, but I remember your
00:52:59
Speaker
you being very prominent everywhere and then trying to tell people you can say things, you can talk. That is making people like me comfortable. And then later I started finding a closure conference. I was part of that thing in Amsterdam. So the people who started, you folks, you started it on the right foot.
00:53:24
Speaker
So I'm very grateful for that. That's really important. It's much more important that you found it welcoming than I did anything to make it welcoming. The important thing is that it's a welcoming place. I don't matter what matters in the community is welcoming.
00:53:43
Speaker
And then at the end of the day, it's like forest is individual trees. And so you have to see that there is individual person how much they're contributing. So I'm very grateful for that. That is the reason, I think, before I was just telling you, I had to take care to get a visa to get to London to show up for that thing for just a fucking couple of days. I'm glad you went to that trouble. And I'm glad it was worth your while that you did that. Yeah, yeah, certainly, certainly. Yeah, yeah. Awesome, awesome start, actually.
00:54:12
Speaker
So talking about the community and the language and because now you're pretty much betting your company enclosure.

Nubank's Acquisition & Open Source Implications

00:54:22
Speaker
Yeah. And there are several companies now, and there is a big news now, obviously, in the closure. Yeah. Yeah. New bank acquiring. Exactly. So how do you feel about that?
00:54:36
Speaker
Well, I'm really happy for the people involved because I have a feeling they're going to have gotten a lot of money. And I hope that this means that they're going to be financially okay for the rest of their lives because Rich really deserves to be financially okay for the rest of their lives. And the people who took a bet on Rich, I think deserve that as well. Cause they basically said, okay, you're really smart. We want to be all over this. We will support you in doing this stuff.
00:55:03
Speaker
and we will stand by you and make this work. And that's great because it's really hard running a business and it's really hard trying to do something that isn't just, especially for a consultancy like College Contact, they should have been renting rich out at the highest possible rates they could. I mean, he would have never said yes if that was the deal.
00:55:25
Speaker
But once they had him, they should have, you know, you know, it would have been really easy for them to go to him and say, no, we really need to get your billables out there because we can get an amazing day. You know, we can charge five grand a day for you. We should be getting you out there. And he still had lots of time to work on the language, which is really, really good. Um, so, you know, I'm, I'm really glad for them from, from that point of view, for being successful.
00:55:50
Speaker
I'm not quite sure what it means for Datomic. I've told you about my trouble with Fox Pro and my trouble with Borland Paradox. Good old Borland is such good tools. I have to admit, that's one of the things that's always made me a bit twitchy about Datomic. Being close source essentially. Being close source essentially is sort of like, okay, well, what does that mean from, I want to be able to keep my data in here forever.
00:56:19
Speaker
And it's a real trade-off. You have a proprietary company that goes and does a proprietary thing, and Oracle has been around longer than any of the other things I use. But that doesn't mean that Oracle is going to be around forever, and doesn't mean that it's not going to disappear right when I need it. Whereas with open source stuff, in the very worst case,
00:56:43
Speaker
I have the last commits of the tools quite possibly locally. If they're built in a stack I'm happy with, which is why I tend to like using tools built on the JVM, tools built in closures, I can fix them. That's going back to the free software thing. There's open source, which is all, oh, it's okay if other people close it up. Then there's free software, which the one thing I like about free software that open source didn't get,
00:57:13
Speaker
is that free software says it's the end user's rights that matter. So it's whoever's at the end of that. It's their rights are the ones that matter, not the people who are producing it. And that to me was a really important thing because for most software, I'm the end user. But yeah, I produce some software for some other people. But for
00:57:37
Speaker
98% of the software I use, I'm the end user, so me having the right to the end of it to be able to change it, or at least maintain it if I need to keep going, makes it real difference.
00:57:54
Speaker
It's sort of like maybe it's a bit of a small point with the open source free software stuff. But in theory, you've got a bigger community of people when you've got free software, because the what we said, the obligations are lower. So so therefore you've got more willingness to contribute. And also, you know, you haven't got all the copyright stuff, etc.
00:58:20
Speaker
licenses and stuff, you know, it's more, it's more, to me, it's a bit more straightforward to contribute to free software than open source software. Okay. So not the, cause certainly cause like all, all the stuff in the new project requires a copyright assignment to the free software foundation. So do you mean the other way around? I'm sorry. I'm completely flipped around here.
00:58:46
Speaker
Yeah, I guess maybe so I think I think so Closure closure is weird condition Yeah, free software foundation. It's kind of a non-profit if you know, I mean, I think that's probably okay Some stuff doesn't require that of course, but but there are certain things like the FSF I mean, you know, they're they're obviously exceptions to this but but a lot of open source stuff is copyrighted to the people that made it and you have to give it back to them you can't it's not
00:59:15
Speaker
You can't just say, okay, here it is. I mean, the closure mix is a problem to me as well, that you have to go through these. The reason you have to go through a CA is so that it can be re-licensed if there is a reason it does need to be re-licensed. And I think that's the reason Free Software Foundation does it.
00:59:39
Speaker
as well so they can say, right, you know, these things are going to move from GPL version two to GPL version three, because we found problems with GPL version two that we want to be able to patch with GPL version three. And if you don't do that, then legally you can't do anything about it. And if somebody goes and takes your software and the Free Software Foundation has sued people that, you know, have taken software and then not actually released it to end users when they ship it to end users is you can't defend a copyright that's not yours.
01:00:09
Speaker
Yeah. So it's sort of, I mean, so, I mean, the GPL and copy left in general is a hack. It's a, Hey, so we've got this system that allows us to write contracts that mean that you can use this under certain circumstances. And if you don't abide by those, the rules in that contract, then we get to sue you under copyright law. Cause you breach the, you breach the terms of the license and thus we're not allowing you to use another copyright. So we can bring the force of copyright down on you. And that's,
01:00:40
Speaker
I'd much rather that we were a lot less worried about copyright. But as long as we do have copyright and as long as we were in the system we were in, then it's a pretty neat hack to take that system and say, well, if I do this with this system, then I can do something to preserve the end rights of users. Closure doesn't have that in that it's Eclipse license, so it's not free software. It's open source software.
01:01:10
Speaker
I can understand why he's taken that approach. And I can understand why with a programming language like that and what you're trying to do with it. I mean, with the stuff I'm doing, all our stuff is under the Eclipse license as well, because it's okay if somebody goes and takes one of the libraries we're doing and goes and puts it in something proprietary. I'd rather they didn't, but it's okay.
01:01:36
Speaker
So, and so I think it's probably a good fit for, you know, a language like Closure to say, you can build close source things with Closure. I'd rather people didn't, but I'm sort of okay overall. You know, the sort of the overall net good is worth it for a couple, you know, for some people making proprietary software with it. Yeah. Very difficult with the language to not have that as an option, I think. Hmm.
01:02:02
Speaker
I don't think you can say you can only build open source software with this language. Well, you can, I think. Yeah, you can. You just need to come up with a new license and then say you can only do this. You're cutting off a lot of potential audience. That's the problem, isn't it? Yeah. So, I don't know. Sometimes that's okay. I mean, it's a bit like talking about the community stuff with saying, you know,
01:02:24
Speaker
if you're a Nazi, you're not welcome here. Annoyingly in programming circles, you are cutting off some of your potential audience, but I'm okay with that. Not saying that people will build close softwares or Nazis or anything like that would truly be a false equivalency. But there are times-
01:02:42
Speaker
did we reach the what was it a godwin's law godwin's law so so so so finally we reached so so so godwin is still around and he has said at the moment um if you do actually make comparisons between the trump administration some other administrations and nazis that it is not a godwin violation that that's how that's how bad has gotten gotten is the guy who came up with that law says it's okay to call people nazis now if they're acting like nazis
01:03:11
Speaker
I mean, it's unfortunate that we need to be reminded by somebody that, yes, you can do that. I think that's a better, it's a better, a better assignment than the guy who made gif saying that it's pronounced gif. So I said, Jodwin is right about that.
01:03:34
Speaker
Well, I think it's probably, I think I can blame it on you guys. I mean, it's all English messes because of this fucking PUT and BUT button and CUT cutter. Like, what the fuck? It doesn't make any sense to me for my guy who is coming from a language where you say what you write and then you write what you say. I know. Well, blame the French for that, really.
01:03:57
Speaker
Well, there's so many more people to blame than just the French. Can we stop there, please? Sure. We can start there, but in American English, it's the same thing. A lot of the French stuff didn't enter British English until after the 1600s.
01:04:18
Speaker
So an awful lot of it is just British things messing up. And it depends on who in the UK you're talking to and which Anglophonic people you're talking to, because everybody has different ways of pronouncing the language. And that's even in the United Kingdom. And that's not even getting into things that sound like English, that aren't English, like Scots.
01:04:46
Speaker
The difference in pronunciation between Sheffield and Surrey and Northumberland is pretty different.
01:04:55
Speaker
Yeah. Wow. Just ask people to say grass and bath. Oh, yeah. But there was an instance of this of like, you know, because what you're talking about BJ is like people reading something and then trying to pronounce it. And it's often you can find with English, you know, when someone's kind of like never heard it before, but they've read it. Yeah. Yeah. Yeah. Yeah. So my son did this the other day, actually, not to throw him under the bus, but he said, But as you throw him under the bus. Exactly. Yeah. He never listens. Don't worry.
01:05:26
Speaker
He says, oh, you know, that's pretty highness. I'm like, what? I was like, no, it's your royal highness, you know? Oh, I know. You mean, you mean heinous. Okay. Oh, yeah. Yeah. That's good. But in Dutch, highness is like, you know, it's the correct initiation. H-E-I, you know?
01:05:46
Speaker
Yeah. Yeah. Yeah. But this, this happened a lot with me because I never had access to people speaking English to me that much. So we only read the stuff and then we have one English teacher. And as you can notice, you know, we have this thick accent, like the Indian people speaking English. And I never knew it was, is it Celtic or is it Celtic or is it Seltis? No idea. If it's a football club, it's Celtic. And if it's language, it's Celtic. Oh, thank you. That clears it all.
01:06:17
Speaker
So there are so many things like this, like I keep reading in the books and looking up in the dictionary and obviously I'm not that smart to figure out the phonetic shit around that one. So just say it in the way that I want. And then suddenly I ended up with people who speak English. And then if I say something, they're like, what the fuck are you talking about? How many people speak English in the Indians of continent, do you think?
01:06:41
Speaker
Everybody these days. But I mean, it's not going to be a billion, is it? It's going to be something shy of that. But it's really strange. It depends on what you mean by how much they speak, because there are so many words in our language that don't have any of our words anymore.
01:07:01
Speaker
So we have rail for train and I never said my language word for school in my language. So my mother, she's a school teacher.
01:07:16
Speaker
That's it. That's what, that's what even in my own language, if you go there and if you say, what do you work as? They'll say I'm a school teacher. So it's a low weekend. Yeah. So it's like, like everything. So many English words are like, you know, into this thing. So most of the people understand the basic stuff pretty easily, which, which, and I think it's fine. There's a lot of indigenous people in India.
01:07:39
Speaker
Yeah, yeah, yeah, of course. But the thing is that the English has proliferated so much everywhere. And because it's also one of the official languages, if you want to go to a bank, then
01:07:49
Speaker
It's a bank. There is no translation for it anymore. I think what I'm saying is that I have a feeling that more people probably speak English in the Indian subcontinent than any other country in the world. So if we're going to choose any accent as being normal, I think we're going to say, what's the average accent? From Indians. Yeah, definitely. So I think we're all doing it wrong, basically. We're the ones who are talking funny.
01:08:15
Speaker
That's true. Yeah. Well, democracy, there is democracy for you, you know, to bring it to the common. But that used to be for American English, didn't it? Because it was more Americans than of our British people. Oh, yeah, that's true. Yeah. Yeah. I think the only thing that gets me about British English is just, you know, so it's not all British English. It's any English accent that's non-rotic and it's making law and lore rhyme.
01:08:45
Speaker
does my head in, or actually making law sound more like lore than lore does. And there are people, particularly in the south of England who do that, who say, oh, I'm in the lore. It's like, you're in the what? But this is something that I think last time when we were talking to me, I think we were saying the same thing to Ray as well, because whenever he says data, I hear data.
01:09:11
Speaker
He says, Java. I hear Java. There is R sound everywhere. Yeah. But I remember I moved from, I mean, you talk about people accepting differences, et cetera. But if you move from the Northeast, I was born in the Northeast of England and I moved to London. And holy fuck, so many people just laugh at your accent all the time. It's kind of like,
01:09:37
Speaker
I guess you kind of accept it, but it's very annoying, you know? What have I done wrong, you know? But if you actually met anybody in London who's actually from London, I think I've only met, when I lived in London, I think I've only met like that. I worked with normal people, not the highfalutin elites that you worked with, Bruce. That's what it is. I'm working with all the metropolitan elites, that'll explain that.
01:10:06
Speaker
I was working with the lowest of the low, you know? But you were in banking too. Actually, I was. Yeah. Yeah, those guys don't come from London. That's for sure. Yeah, they're, they're, they're all meant before that. Yeah. All right.
01:10:24
Speaker
Oh, anyway, that's a good detour for languages and accents. So coming back to closure, maybe, wow. Just before we finish on the languages and accents, though, it is an interesting one, maybe.

Life in Scotland & Medieval Literature Influence

01:10:41
Speaker
I think you're now living in Scotland, aren't you, Bruce? I am.
01:10:44
Speaker
Oh, yeah. So how are you finding that from a sort of, you know, accent perspective? I love it. It's a lot of fun. I've gotten I love the Dundee accent and I love
01:10:58
Speaker
So it's Scots rather than Gallic over here. So there are lots of people who speak Scots or a particular form of Scots called Doric. And it's a lot of fun hearing that because when I was doing medieval literature, one of the things I did in addition to Middle English, I did Middle Scots. And it's interesting sort of hearing all the different things in it and hearing
01:11:22
Speaker
There are a lot of things in English in the north of England that are still a lot like Middle English or even Anglo-Saxon, and then lots of things where you go, okay, right, that's actually a medieval Norse borrow word that's come through.
01:11:39
Speaker
And so there are a lot of things like that. And that's true in sort of Scots as well as a lot of the Scots stuff. You can see the roots back to Middle Scots and things like that that have still held on because communities were quite tight-knit. And a lot of the accent really, really hangs around. And the people that did move in tended to learn the local language.
01:12:07
Speaker
So do you explain to the local people what their accent is all about? You know, it's like you Scott's playing. I try I try to avoid. I try I try to I try to avoid Scott's planning for the most part.
01:12:22
Speaker
for the most part, though I do have a lot of fun sort of English and British explaining to an awful lot of people as an American. I'm only part-time American because I was born in the UK, so you can't get rid of me because I was born in the UK early enough that I'm a citizen.
01:12:42
Speaker
So I do have a lot of fun when people try explaining to me bits about British history and how things have always been British. And it's like, yeah, that's not always been British. That only goes back to like the 1950s or, you know, things like, you know, something really old in Britain, like something has been around in Britain forever and ever. Sticky toffee pudding, right? Sticky toffee pudding has been around in Britain forever. I mean, it's got to at least be 19th century, right, right?
01:13:06
Speaker
I have no idea, but it seems pretty recent to me. Yeah, it's from the 1970s. Right, right, yeah. I mean, I think, you know, like gruel or something, fair enough, you know, porridge, but that's mostly Scottish anyway. You know, Scots orts and stuff like this. You know, baked potatoes, maybe, I would think this would be the earliest British cooking, and it's still the best, you know? But baked potatoes, do you know where baked potatoes are from? They're from South America.
01:13:35
Speaker
Potatoes are from South America. Potatoes aren't British. And it used to be barley in Scotland. Oats are relatively recent. Oats are like 17th, 18th century.
01:13:47
Speaker
So oats are quite recent. Medieval Scots would have been eating barley. It would have been eating barley porridge, sort of peas pudding and stuff like that with barley rather than notes. So all these things, it feel like they're forever. And that's the weird thing about it is that Britain is really good at marketing itself as this has been happening forever. It's like, no, it's not. That's only been going on for the last five years and I remember the marketing campaign about it.
01:14:14
Speaker
you know, plum and sandwiches. Oh, that's been around forever. That was the cheese board post-World War II, saying, oh, we need to do something with cheese. What are we going to do?
01:14:28
Speaker
Nice. Anyway, Closure. Yes. It's a great language. I think everybody should use it. Emacs is wonderful. VI is wonderful. Use whatever works for you. I like Emacs for the same reason I like other free software stuff is it's going to be around forever. Yeah.
01:14:48
Speaker
Nice. I think on that wonderful note, I think we are right about one hour already. So it's been fantastic talking to you, Bruce. And keep on doing great work, and especially the kind of work that you're doing using Closure, obviously, which is awesome, but also solving a problem that is more meaningful and impactful.
01:15:11
Speaker
So that is amazing. And all the stuff that you did for the community and even still today. I think with the community, I want to thank all the people who complained, partly because every time they complained, I said, oh, that's a great idea. I'll help you organize the event, which is sort of, I think that was a secret sauce in the community. And I particularly want to thank Robert for tricking me into it.
01:15:38
Speaker
John for carrying on with it and people like Yelena and Mario and people like that who carried on with the dojos and all the other people, you know, doing things in Amsterdam and everybody else has been out doing all the community stuff. I think that's been great. It's been great seeing something
01:15:57
Speaker
that have put a lot of work into and tried really hard to make sure that other people did it and watching other people carry on with it and having it live well beyond my involvement with it. That's just been fantastic. I think that just makes me so super happy. Awesome. Yeah, I mean, we're doing this for ourselves. So that's a given. Yeah.
01:16:22
Speaker
This podcast is entirely about ourselves trying to figure out medieval Scots stuff. That was the reason. Cool. Thank you. Thanks a lot. And stay safe. And people who are listening to the podcast, stay safe as well. And keep writing awesome software. And that's it from us for today.
01:16:47
Speaker
Thank you for listening to this episode of DeafN and the awesome vegetarian music on the track is Melon Hamburger by Pizzeri and the show's audio is mixed by Wouter Dullert. I'm pretty sure I butchered his name. Maybe you should insert your own name here, Dullert.
01:17:05
Speaker
If you'd like to support us, please do check out our Patreon page and you can show your appreciation to all the hard work or the lack of hard work that we're doing. And you can also catch up with either Ray with me for some unexplainable reason you want to interact with us, then do check us out on Slack, Closureion Slack or Closureverse or on Zulep or just at us at Deafened Podcast on Twitter.
01:17:33
Speaker
Enjoy your day and see you in the next episode.
01:18:00
Speaker
you