Become a Creator today!Start creating today - Share your story with the world!
Start for free
00:00:00
00:00:01
#13 - Arne Brasseur: Clojure Bridge and Lambda Island image

#13 - Arne Brasseur: Clojure Bridge and Lambda Island

defn
Avatar
43 Plays9 years ago
Discussion points * Chestnut * Clojure Bridge * Lambda Island * Clojure Script - reframe More show notes and links at the web site https://defn.audio/
Transcript
00:00:13
Speaker
Your enclosure was 12, so this is 13. So, okay. So, boom.

Introduction & Episode Overview

00:00:20
Speaker
Hello, welcome to Daffan, episode 13. Unlucky for some, especially our guests, I think. No, for me, it's actually kind of a lucky number. All right, okay. Who is that? Who's that? Who's that? Who's that voice? It's Ray in Belgium here. And Vijay from Holland. And this is Arna tuning in from Berlin.
00:00:43
Speaker
Hello Arna, welcome to Defland episode number 13, the lucky number. Yeah, hey, VJ, Ray, how's it going? It's going well. It's going pretty good, pretty good.

Euroclosure Conference Highlights

00:00:53
Speaker
So first, let's talk about a bit, as Ray was mentioning before the show, we're still in the afterglow of Euroclosure. So I think we had fantastic time at Euroclosure and we got to meet a lot of excellent developers and, you know,
00:01:13
Speaker
people who are into all the Clojureans or whatever those people call themselves these days. I don't know. Clojureans, I think. Clojureans, Clojurists. Yeah, Clojurists. Yeah. And then we also got to record some there.
00:01:27
Speaker
And we also got to record some nice chats with them and we're still processing those things and those episodes should be up pretty soon on the pipes. We're going to do something special as well, aren't we? Because we took our camera along as well.
00:01:44
Speaker
We did a bit of video recording with a mini mini TV studio. Yeah, it's quite hilarious actually and So we're gonna put some stuff on the YouTube channels as well. So yeah, we'll have the podcasts We'll have like the recordings but also we'll have some visuals as well, which would be a novelty for for deafen Yeah, for sure. I think I think it would be
00:02:07
Speaker
It would be really nice if we can voice swap on the videos. Like when I'm speaking, you know, I should be speaking in Ray's voice. And then when Ray is speaking, it should be in the Indian voice. That would be hilarious when people watch the videos. They get super confused. Like, wait, what? I shall tell Wouter who's doing the editing to swap us over like that. Yeah.
00:02:27
Speaker
That should trick people. I'm actually going to make you like the chipmunk. That's for the videos. That's probably the best thing. Yeah, that'll be cool. But anyway, it was a fantastic conference with great talks and everything. And Arne, what was your perspective on neuroclosure?
00:02:48
Speaker
So I had a really good time. It was my first time in Bratislava. And we went there with a big delegation from Berlin. It's always nice. So Malvina and I had the opportunity to do a talk on Closure Bridge. And that was great. It's always great to get the word out and to show people what we're doing, but also to show people that they can do the same. I talked to a lot of people.
00:03:12
Speaker
I have to say, I missed a lot of the talks. I'm actually really waiting for the videos to come out because I've been asking everybody which talks they like best and then I'm going to watch those on the videos. All of them. Yeah, probably. We had a table in the back from Closure Bridge and so I spent a lot of time there just manning the booth and talking to people.
00:03:36
Speaker
Which was cool, you know, I just spent a lot of time in the hallway track meeting people, some people that I knew from online that I haven't met in person yet. So it was it was great. Was really well organized. Had a very good time. Yeah.
00:03:49
Speaker
I think it was a fantastic conference. Of course, I mean, I was attending, I think, most of the talks, apart from the time where we spent talking to the speakers in our makeshift defense studio, it was, I mean, there was a lot of enthusiasm and every, I think this is almost like third or fourth Euroclosure for me. The one that I missed was in Barcelona.
00:04:14
Speaker
rest of the things I attended all of them so you can see consistently you know like the growing enthusiasm of the people and especially the talks which are not just about technology but also application of technology in different domains so that was especially the the medical stuff that that one of the talk was based on that was pretty cool actually but anyway so
00:04:36
Speaker
Before we go on, remember, I had a talk there as well. Yes. I was about to say about that one. We had a deaf joke session by Ray which was we expected four people, but it ended up having almost like 400 people, I think.
00:04:52
Speaker
400, yeah, at least. Was that the unsession about comedy and closure? Was that you? I saw that on the wiki. I didn't realize it was you. Oh, you should have came along. Actually, it was quite well attended. Far, far, far in excess of my expectations. The sad thing about it was that we didn't have a PA system. And I had a bit of a cold. So I don't know. It was quite well. It went quite well. It was quite funny. And I enjoyed it.
00:05:19
Speaker
Circumstance is considered. Exactly, exactly. My son, who came out as well with me, who did some of the recording for us, he got a video of the on session. But the quality isn't that great, but I might still put it up there. I'll let Vijay have a look to see if he thinks it's good enough quality. But it was fun anyway. It was good doing it. It's the first time I've ever done anything like that
00:05:47
Speaker
at a conference or in real life, so it was quite good fun to do it. Definitely something I'd like to do in the future as well, actually. I'm hoping to do something at the Closure Days. Or maybe I'll put a deaf joke in for Closure D, Anna. Yeah, that would be nice. I'm sure they'd be open for that. Yeah, it was a bit of fun. And they've got some great feedback, some great audience participation. That was the awesome thing about it, actually. So what happened exactly? How did you two combine
00:06:18
Speaker
I'm sorry? Close your end and comedy. What's the link? Just finding it hard to imagine.
00:06:28
Speaker
Well, it was a macro called DefJoke, which you used to construct functional programming jokes. And it was just basically going through the various building blocks and patterns and those kind of things. And yeah, so I'll leave the rest of your imagination. Yeah, there is a lot to be imagined.
00:06:51
Speaker
But the nice thing about it was that I got a lot of ribbing afterwards and a lot of feedback from people who were wanting to give me all kinds of ideas for different types of death jokes. So that was good. I think there's a rich vein of material to my mind there. So I think a few more conference talks were in order. Anyway, yes. So that's probably enough about that one.
00:07:16
Speaker
But it was a hell of a conference. I think I've just about recovered from it actually. There were some very late nights. Oh my god, some very late nights. Some very early mornings. Yeah. Actually, I've been sober since the after party. Just wasn't enough, had enough. Yeah. All right. Well, that's good. So Vijay.

Meet Arne: Background & Projects

00:07:37
Speaker
Yes. So I think it would be nice if we give some idea about our guest on the show. So Arne. Arne. Arne. Arne. Yeah. So you're from Belgium, living in Berlin. Exactly. And you're an enclosure practitioner, obviously. And you have released a Leiningen template called Chestnut.
00:08:07
Speaker
That is correct. That is something that people are known about. And also, of course, you're doing the screencast for Lambda Island. Yeah, exactly. Yeah. Yeah. So I'm so my name's Arna. I'm originally from Belgium, moved to Berlin about four years ago. And up to up to that point, I was I was mostly doing Ruby. I've actually
00:08:27
Speaker
doing a lot of Ruby in the past, that's sort of been my main language, you know, going back to 2005, 2006 with the first Rails boom. But I've also always had a soft spot for functional programming. I'm a long time Emacs user, that kind of, that, you know, set me on the...
00:08:52
Speaker
I'm also a vegetarian if that helps to balance things out. So emacs kind of gave me a taste for lisp and then you know I'm actually I did a lot of Java in uni which you know I know Java gets a better rep in some circles but
00:09:11
Speaker
You know, I never did much of the enterprise Java, luckily. So I have fond memories of doing Java. And then when I first saw Clojure, okay, you know, functional programming, a lisp on the JVM, you know, it all came together. It just all made sense. And then what really got me hooked in the end was overtone. Oh, okay. Started playing with overtone. And yeah, the rest is history. And then yeah, got it.
00:09:41
Speaker
started looking at how to do web development with Closure, you know, what's the story on the front end, what's the story on the back end. This was sort of, you know, when React was still very young and there was Ohm, there wasn't Ohm next yet. I think maybe Reagent was already around.
00:10:00
Speaker
But so I wanted to try Ohm, I wanted to try Figwheel. I wanted to do it from Emacs and have my browser connected REPL that would work with CIDR. And that all was just so hard to set up. And so I spent a long weekend like either Figwheel would be working or the REPL would be working, but then the auto reloading would break again.
00:10:24
Speaker
In the end, when I finally got a working setup, I just threw that out and tweeted about it, and people loved it. It was really sort of, okay, finally something that I can just git clone, line REPL, and then run, and off you go. So people really liked it, and so I turned into a Lightning and template, and it's sort of been evolving a bit since then, and kind of became
00:10:50
Speaker
a household name in the Closure community. I'm still surprised, but it regularly happens that I see someone mention it in a conference talk or a blog post, and it's really amazing how that took off. It also really helped that David Nolan tweeted about it very early on. Yeah, and also it has almost a thousand stars on GitHub, so that's an achievement. Obviously, that's a popularity.
00:11:15
Speaker
I mean, people still use it. I have to say, I was, you know, it's still kind of a closure noop at that point. And it's kind of, it's been improved over the years, but for instance, it doesn't use,
00:11:30
Speaker
any component system, things like that. There's various ways that, you know, probably if I would do it all over, I would do it in a different way. And I've been sort of thinking about, you know, what could be the chestnut next? But yeah, just sort of too much on my plate to really work on that. Would I use boot?
00:11:50
Speaker
Yeah, I'm allowed to ask the question out loud. Has it put in the chat there? Yes. Side channels. The fourth wall. I was just wondering, actually, because you said it was a line again plug-in. So I'm just wondering, because we talked to Misha in the past about Hoplon and stuff like that. Obviously, it's a very different way of looking at the web to all the React stuff. But I just wondered, if you played with Boot at all,
00:12:18
Speaker
I've played a tiny bit with boot. I have to say I haven't used it that much yet. People have to ask repeatedly if I would make a boot version of Chestnut. I haven't done that so far because I found that
00:12:34
Speaker
There's already a bunch of different flags in there to kind of get different versions of it. And I found that that very quickly leads to a lot of complexity, just maintaining the thing that the amount of combinations blows up. That's one reason why I haven't turned it into a boot thing. There's community alternatives that kind of do the same thing with Booth. No point in reinventing a wheel, is there? Someone else has done a similar equivalent then, fine, yeah?
00:13:02
Speaker
Yeah, but my main sentiment about this is that actually, you know, I think both lining and or boots, if you look at Chestnut, like it's a massive lining and file. And I feel that, you know, if I would do it over again,
00:13:17
Speaker
I would do much less through Lightning and then much more inside the application. Like all of that stuff that Lightning is managing, your end REPL, your fig wheel, instead of having that done through Lightning and plugins, just have that be system components in your app. Yeah. That's kind of the way that boot works, isn't it, actually, is that it's more code that's extendable and you just write your code.
00:13:46
Speaker
So it's not like this plug-in stuff where you have to conform to the line again where, you know, just write any code that you want, which is why it might be more appealing to you in the future. But anyway, that is true. Actually, I just kind of I always held that, you know, from what I've seen of it, I think Buddhist is great. But, you know, I always really keep in mind, like, what, you know, is it is it helping beginners? Is it helping newcomers? And
00:14:16
Speaker
You know, there's downsides to lining and, but it's a standard in a way. Um, and so I've always had very mixed feelings about this. Like, yes, I appreciate that people are trying to approve things. Um, but now it's just like another thing when someone comes to closure and it's like, Oh, you know, lining and boot.
00:14:35
Speaker
Just having to make that choice can be enough to turn people off. Sorry, Vijay. I'd like to take a quick step back. I wanted to ask you, how did you learn Closure? What was your path? Did you read any books or how did you get into Closure, actually?
00:14:58
Speaker
Good question. I started out with a couple tutorials. I don't even remember which one. They weren't particularly great tutorials, but just the main data structures and the main syntax. Then just started playing with it. Like I said, overtone was really important for me at the beginning.
00:15:19
Speaker
I read The Joy of Closure pretty early on. And that was a big one for me, even though it was already probably too advanced for my level then. Looking at it now, I've read at least half a dozen Closure books and I would say like, okay, don't read Joy of Closure first. Yeah, I made that mistake too. There was a nightmare. Oh my God, these are too hard.
00:15:42
Speaker
I worked my way through it and learned a ton. And I would love to reread it actually now to see how much more I would get out of it. But yeah, that was a big one.
00:15:54
Speaker
And staying on the same theme. So obviously, you're now part of Closure Bridge. You've been running the workshops for teaching people Closure. And also, the same theme extends into your Lambda Island. You're making screencasts about learning Closure. So how did you get into Closure Bridge? I mean, how did it all start? And what are you doing with Closure Bridge? That's a funny story, actually.
00:16:22
Speaker
It all kind of started at the Ruby Monsters. So there's a really active Rails Girls community in Berlin. So they also do free workshops for women or other underrepresented groups. And so I was a coach at Rails Girls for several years. And one of the great things with Rails Girls in Berlin is that after the workshop, several study groups formed that sort of meet every week to continue to learn.
00:16:49
Speaker
They just have the same same people that go there every like with the Ruby monsters. It's every Monday evening They have a couple coaches there and they kind of work their way through a curriculum and then eventually build an app So I had been a coach at Ruby monsters every Monday evening for a year or a year and a half maybe two years and
00:17:07
Speaker
And when I really started spending more time with Closure and I was playing around with Overtone, and I showed some people their Overtone, and like, oh, this is, look at this. You can make music with this. And it's cool. It's awesome. And so we basically split off. We kept on meeting every Monday at the same place, but we were sort of first there with just three of us that were sort of sitting on the side doing this weird Closure-y stuff.
00:17:35
Speaker
Um, and then a couple more people joined, you know, then we were five, uh, in our little closure group and it, it was all, I mean, looking at back at it now, you know, we did, these were like people that were still learning programming and we were like covering overtone closure and Emacs all at the same time.
00:17:51
Speaker
You know, it was like complete overload, but it was awesome. We did a lot of cool stuff. And then closure bridge Zollingen happened.

ClosureBridge Berlin: Growth & Funding

00:17:59
Speaker
So this was the first closure bridge in Germany and like another city more in the West. And we saw this and we're like, wait, what? Like they're doing a closure bridge in this random city that half of us haven't heard of and there's not a closure bridge in Berlin. Like how is this possible?
00:18:18
Speaker
And then we decided to do a closure bridge, which I think some people afterwards regretted because it's a lot of work. And yeah, that first workshop was, you know, was stuff at times. And then the second one, I think, was even harder because everybody was like, you know, still a bit recovering from the first one.
00:18:37
Speaker
But once we had made that push to like, OK, six months later, let's let's just do this again. And then once the second workshop had happened, you know, we were kind of in this rhythm and it just kept going. And now we're two years in. OK. And what is the structure of the of the closure bridge? Is it like a like a one day training enclosure? And who is working on the curriculum and everything?
00:18:58
Speaker
Yeah, so it's typically a one-day workshop. So on Friday evening, everybody meets up, and it's called the Install Fest. We just make sure everybody's laptop is OK, that they have all the stuff that they need. And then the next day, everybody gets together. We have some breakfast. We have an opening presentation. And then we split everybody in groups. So there's usually groups of about four students with two coaches.
00:19:21
Speaker
and then they work their way through the curriculum. And there's a Closure Bridge curriculum that, I mean, we've made some changes for the Berlin team. Some of those have gone back upstream, but there's kind of a shared curriculum that all Closure Bridges use that just kind of goes through the basics, functions, data structures. And then in the afternoon, we get them to work on a cool app.
00:19:47
Speaker
So they do graphics and it's very hands-on and it's amazing how much you can do in a day and that's one of the things that I love about Closure Bridge. When you do Rails Girls, it's so challenging, just the basic concept of Ruby and Rails to pack that in a single day.
00:20:08
Speaker
Whereas with Closure, you can pack all the basic concepts in half a day and then have half a day to play around with graphics. And so we have a demo at the end of the day where people can show their cool sketches. And it's super impressive. It's always really cool what people come up with. OK. That's pretty nice.
00:20:24
Speaker
So we're actually going to do, I think you're looking at doing a closure bridge as well, Vijay, aren't you? And we're thinking about it in Belgium too. The interesting thing about closure bridge for me is, I mean, we're a relatively small community in the first place. So the big question, I think, is how do you market this thing? How do you get it out there? What sort of tentacles do you put out into the community to make these kind of things happen?
00:20:52
Speaker
Good question, because it's really important to reach out, actually. It makes a huge difference. I think in the first workshops, we tweeted about it, we told our friends. We got a lot of people, a lot of familiar faces, faces that we already knew from the Rails Girls community, from the Berlin tech community and people around that.
00:21:17
Speaker
Later on, we decided to make a bigger effort to really reach out and try to find reach out.
00:21:24
Speaker
to other groups that would not necessarily find us. And so what we do now, we actually print flyers and posters. We put those around universities. We put those just around on the street and town, bakeries or libraries, whatever. There's also a couple people that sort of look around for Facebook groups or mailing lists, anything from, you know, feminist or LGBTQ or, you know,
00:21:54
Speaker
all these kind of sub communities that might be tangentially interested in what we're doing, just sort of give them a shout, hey, we're doing this. And so that's how, you know, on the last workshop, we had 150 people sign up. Wow.
00:22:10
Speaker
We don't have enough space for them, unfortunately, like we've been growing slowly. I think the last workshop we had 35, 36 attendees. This time we're going for 40. So that's kind of the drawback of that. We have to disappoint a lot of people, but you do really notice the...
00:22:28
Speaker
the added diversity on the day you know like it's not just that they're women or non-binary but it's sort of you know people with different backgrounds from different you know different communities and that's really nice to see. What do you do? Do you do like a first come first serve type thing or do you have some other filters or how does that work?
00:22:49
Speaker
We have a system where we pick people at random and then give them a limited amount of time to confirm. So this is a system that basically we inherited also from Rails Girls because the problem is if you do it first come first serve then you get a lot of people that sign up just to make sure they have a slot but
00:23:17
Speaker
they might not be 100% sure yet if they can make it, or they sign up a month beforehand and circumstances change. And so what you get with a lot of free events like this, and I've heard this from similar workshops all around, that they get a lot of no-shows. Sometimes up to half of the people just don't show up, and this is super sad because you only have so much space, you're already sending so many people away, and then half don't show up.
00:23:41
Speaker
Yeah, you don't want to be disappointing the people that could have actually went, you know, that's really annoying. Exactly. Yeah. So we we invite, you know, we say like, OK, we want to invite 40 people. We pick 40 people at random and we say confirm within a week. And then a week later, we see how many spaces freed up. We invite more. And so we that's that's kind of what's happening now, our next workshops in a couple of weeks. And so me and someone else were basically constantly in the in the mailbox checking like, OK, who's replying and keeping that all up to date.
00:24:09
Speaker
Okay. And another question for you is, what kind of proportion of like non-male, white males do you kind of want to bring to the party? You know, because again, underrepresented groups you want to have, you know,
00:24:26
Speaker
women, ethnic minorities, all these kind of other, kind of like LGBT type people. How do you structure the kind of teaching staff to be, well, I don't know about to be sympathetic, but to be, because I hope everyone is, but I mean to be kind of more like those people or to make them feel more welcome, you know? Yeah.
00:24:52
Speaker
The main thing, so this is a bootstrapping problem, right? And this is also something I talk about with other communities that, you know, what is it?
00:25:02
Speaker
Is it still a good idea to do this kind of workshop if basically all your coaches are white guys? Isn't that kind of setting the wrong example? And so what we do, we are lucky that in this community we do have a good group of women that can do those things and are there to help us do that.
00:25:25
Speaker
The organization is mixed, but at least half of them are women. And what we especially do is make sure that those women have the most visible positions. And any presentations, we tend to make sure that the women do that.
00:25:45
Speaker
Also, we've been going for two years now, and so we also have now a study group of our own, people that are studying every week, continuing to learn closure. And so we already have several people that, you know, we're at the same workshop that are coaching now, that are helping to organize now. So it's really starting to feed into itself, which is nice to see. Yeah, that's awesome. Yeah. Sorry, mate. Yeah.
00:26:10
Speaker
I was wondering, obviously, this kind of things need some sort of a sponsorship. How do you manage the sponsorship? You must have some expenses. You need to have some space and food or something like that for people. Yeah, we do have expenses.
00:26:27
Speaker
Especially food is one of our bigger expenses or sometimes we've done t-shirts, t-shirts get expensive. So we just, we kind of drafted up a number of sponsorship tiers. So at the moment that goes from 700 for a platinum sponsorship down to 250 for just sort of a supporter sponsorship.
00:26:49
Speaker
And then we start emailing people. We track these things over GitHub issues. It's actually all public if you want to see this. So we just have a long list of companies that use Closure or are sympathetic to our costs. And then people just pick someone off the list and write them an email, say, do you want to support us?
00:27:09
Speaker
And yeah, we're also just talking to a lot of people, you know, Euroclosure meetups. Yeah. That all helps. Yeah. And it has been successful so far, as in you were not constrained by money, hopefully. No, it has been successful so far. Actually, we've been lucky enough to always raise a little bit more than we needed so far. And we collaborate for this with Travis Foundation. So there's Travis CI, which is this continuous integration app.
00:27:39
Speaker
But they also have a foundation, which they put a bunch of their own money in, but which is also crowdfunded. And the foundation does things like Rails Girls Summer of Code, where they fund women to work on open source for a summer.
00:27:55
Speaker
And so also things like Closure Bridge, we can use Travis Foundation to help us with our finances. So if a sponsor wants to give us money, we can do one of two things. If we say like, okay, you want to sponsor for 500 euros, here's a food bill for 500 euros, you two figure it out. That's usually the easiest, but that doesn't always work. It doesn't always match up.
00:28:17
Speaker
So then they make a donation to Travis Foundation. Travis Foundation can give them a tax receipt, which is in bureaucratic Germany. It's important that that's an official non-profit. And then any costs we have, we just get Travis Foundation to refund us. So that's kind of nice. And we've been building up a small amount of savings in Travis Foundation kind of for a rainy day.
00:28:42
Speaker
Yeah, that's pretty nice. Actually, we are, at least I heard that in the Netherlands they are working on the closure bridge NL. It's still in the progress, probably you know already, I don't know. I have heard mentions, yeah, I believe some people came by our booth at Europe Closure from the Netherlands that were interested in organizing a workshop.
00:29:02
Speaker
Yeah, it would be it would be great actually my my wife I think just spoke to you guys at at your closure and she's also in talks with the closure bridge and now group because she did she did some coaching at Django girls before yeah for one day in the Hague and I think she's gonna help with the closure bridge in and now also I think she she she's interested in doing that but we'll see how when when it is going to be solidified in terms of planning and everything so
00:29:32
Speaker
Yeah looking forward like there's been I didn't think it's five or six countries in Europe that have had closure bridges so far and I'm really curious to see now because we had a lot of positive feedback at Europe closure like speaking about it if we managed to inspire some some local chapters you know really really curious to see what will come of that. Yeah that's brilliant stuff really is yeah so I think I think we can you know we can thank you for setting these kind of things up and as you said getting some tips on the infrastructure
00:30:02
Speaker
Yeah, and I have to say we are a whole team. I really don't want to take too much credit for the closure bridge. There's a lot of people here. Yeah. Yeah, yeah, yeah. There's a lot of enthusiasm at the Euroclosure actually amongst the you and Malwini. And also there was some other ladies girls at the Euroclosure who were very enthusiastic about it. So it's obviously growing, which is fantastic.
00:30:30
Speaker
And it really works. So if you go to the Berlin closure meetup now, it's a very diverse and mixed crowd. And we're really spoiled in Berlin in that way. I think if you go to meetups in a lot of other places, it's not the case. That's true.
00:30:51
Speaker
you know something that you see that it really works if you start doing this in your city you know regularly a year or two later you you really reap the rewards so i can only hardly recommend it yeah yeah yeah i think more people need to be i don't know exposed to this awesomeness i agree you know more people need to get into the parentheses that's pretty cool
00:31:13
Speaker
Okay, so let's continue on the same theme. So, you know, training people with closures. So you've been doing this podcasts, sorry, screencasts for closure. Exactly. That's called Lambda Island, right? Yeah. So what is the plan? What is the plan behind it? And how did you start it? And what are you teaching people in that one?

Lambda Island: Creation & Challenges

00:31:35
Speaker
So I started Lambda Island today, seven months ago. So I launched a 13th of May on a Friday the 13th. And you're on the 13th episode. This is the universe confiding. And Sunday the 13th as well.
00:31:52
Speaker
No, this was basically my way of saying I have so much faith and closure that I'm happy to launch on a Friday the 13th. So it's a site where people can subscribe and then watch the videos that I make.
00:32:10
Speaker
The main team is closure web development. So there's backend stuff there, there's frontend stuff. There are kind of four thread tracks. So there's the backend to frontend, then I have some episodes that are more specifically about tooling. Because this is one of the things that when I talk to people and they get stuck on tooling, and it's the most horrible thing to get stuck on.
00:32:34
Speaker
So I really tried to pick some things apart, like how to use Fig Wheel with Emacs, or what are all these options that go to the ClosureScript compiler. There's some episodes about that kind of stuff. And then there are some episodes just about fundamentals, what I call fundamentals, like the sum function, this weird little function that half of the people don't really understand what's it for. Or I had an episode about spec, which a lot of people watched.
00:33:02
Speaker
And so some of these episodes are free, but most of them, yeah, you need to take a subscription. It's comparatively cheap. I think maybe in January or February, I'm going to start raising my prices a little bit, but I had to build a bit of a catalog first, so... Okay. So people who are listening, so go and subscribe now because the prices are going to go up. Yeah. Yeah, I'll send...
00:33:28
Speaker
I'll send a bit of advance warning, you know, so people can get their subscriptions ready. So what's your plan for this one? So you want to make it like a kind of a connected tutorial sort of thing or individual episodes or you know, this is like bite sized standalone episodes. It's a bit of both. So episodes are 10 to 15 minutes typically. Okay. And
00:33:52
Speaker
Most of them you should be able to watch standalone, but there are also certain threats. I mean, some are, like, there's, I think, three episodes that just sort of talk about everything that's inside Luminous. Those obviously kind of go together, and there's three episodes that are very beginner-friendly about Ring.
00:34:10
Speaker
So those kind of go together. But then for instance, there's all the episodes that built on React. So I started with an episode about using React without any free framework, just React with Closure Script. And then the next episode went into Reagent. And then I had some more episodes about specific parts of Reagent. And now I'm covering Reframe. And so those kind of built on top of each other. But if you're already know React, if you're already familiar with the principles of React, you can skip ahead to Reagent. Or if you're already
00:34:40
Speaker
you know, scene reagent or at least know, you know, a bit of reactant and know what hiccup is. Maybe you can skip straight to reframe. So I do try to kind of make them self-contained to a point. How many videos do you have right now? 19, I think. Wow, 19. Okay.
00:35:01
Speaker
Yeah, 19, it's between three and four hours of content now. Very nice. What's the kind of, maybe before we get in, you tell me, what about the process for making these kind of things? I'm guessing that it's probably a big effort to make one of those videos. E-max. Shut up with the E-max. I bet he's not using E-max to edit the fucking videos.
00:35:25
Speaker
That is correct. I'm even shocker, I'm even rebooting to Windows to edit the videos. But yeah, I'm skipping ahead now. So I started out, my original plan was to, you know,
00:35:48
Speaker
So I launched and I said, okay, I'm not sure like how many videos, how often I'll be making a video. I'm just going to see how well the process goes. So many people kept asking, but if I'm going to get a subscription, how often are you going to post? So I said like, okay, I'm going to start with once a week and kind of see where it goes from there. This turned out to be very optimistic.
00:36:09
Speaker
And so then I kind of dropped to 10 days, two weeks. And that's kind of a reasonable publishing schedule for me. So what goes into an episode is basically, so once I know my topic, I research the topic. I'm playing around with it. I might be reading the code, reading documentation, asking questions on Slack, make sure that I really know what I'm talking about. I mean, some things I already know quite well, but obviously not everything.
00:36:38
Speaker
And I think there's also a lot of value in teaching as you learn, so the pain is still fresh. And then I try to find a good example, like, okay, what's the code that I'm going to show? I prefer to have some kind of practical thing that I can really show, like here's a nap or here's something that does something. So then I go into coding mode and I try to build something that's kind of neat and clean and easy to help me explain things.
00:37:08
Speaker
Then I go into writing, and so I write the whole script for the episode, which is what I'm going to say plus the code, what I'm going to say plus the code. So that's just one markdown file, which then later also serves as the transcript on the site.
00:37:24
Speaker
And then I go into recording so I have this thing I can show to you people on the podcast obviously can't see it but I have this kind of MIDI controller that I have an elaborate script so I can record either video or voice or take a screen shot.
00:37:42
Speaker
That kind of just generates time-stamped files. And so for each scene, so this markdown file is kind of divided in scenes, 10, 15 seconds each. I record the video, then I record the audio.
00:37:56
Speaker
And then all of that goes into Vegas. I'm using Sony Vegas. So then, yeah, it's another half a day of sticking that all together. And then you got your 10 minutes of videos and then you're, you know, one week further on and then you haven't done any marketing yet. That is a significant amount of work. Wow.
00:38:16
Speaker
Yeah, I mean, I do recognize that I might be overdoing it, but at the moment, it's the only way that I know how. And I do get a lot of compliments on the production quality of the videos. So I think that's just sort of the trade-off now that, yes, releases will be a bit slower, but you're going to get value for your money. And I am trying to improve the process
00:38:44
Speaker
there's still several things that I, you know, it's already gotten a lot better. I've gotten a lot better and at the writing and at the recording. But yeah, I'm assuming I'm going to keep getting better at this and hopefully, you know, yeah, it'll only get easier from here on. Okay.
00:39:00
Speaker
So obviously when you've been very busy with Lambda Island and Closure Bridge and all of this stuff, so what is your day job or what do you do other than these things? I really sincerely wish that you could make your full living based on Lambda Island. I hope there is going to be more people. Same here. I sincerely wish so as well.
00:39:24
Speaker
When I launched, so up to last year, up to about a year ago, I was actually doing Ruby more or less full-time as a contractor. So I've been doing contract work since 2009 in various languages. I've worked in telecom. I've done various freelance gigs, but the last couple of years I was mostly doing Ruby for an Irish company.
00:39:49
Speaker
Um, and then last year I decided that, okay, you know, this is, this is very comfortable. Um, but I, I want, I want my own product. I want something where I'm not just selling my time. I want to, you know, plus I want something that, that I'm really behind where I'm kind of, you know, doing something positive, um, for the world, something creative. And so I took my savings and, uh, kind of calculated that. Okay. You know,
00:40:15
Speaker
This is this is the runway that I have. Let's let's do this. And so I started building the site. I started making the first, you know, figuring out my production pipeline, writing the first episodes. And then eventually in May I launched. And at that point, I was still thinking that, OK, you know, if subscribers go up month after month and if I can do some some, you know, people can get a subscription either per month, but they can also pay ahead for a year. Yeah.
00:40:43
Speaker
And so with that in mind, I was like, OK, you know, if I can get a couple of annual subscriptions every month plus subscription base keeps growing at a certain rate by the end of the year, I'm in the clear, you know, and I can just sort of get past the cutoff point. Yeah. And everything will be golden.
00:41:00
Speaker
It underperformed by about half, I'd say. So it's still good. I'm still quite happy with the number of subscriptions that I'm having. So I'm at 71 paying customers now, plus two team subscriptions, two companies that got a subscription for their team. So I think it's enough to validate the idea to say, OK, this is going to take some time. This is what, in startup circles, is known as the long, slow ramp of death.
00:41:29
Speaker
Yeah. You have revenue, and revenue is going up, but you're also losing money every single month. And so this, by August, September, it was really starting to get dire, and I was like, OK, I need to do something. You're bleeding out at that point.
00:41:46
Speaker
Yeah, and it was it was really giving me a lot of stress, you know, like I saw my my bank got going down every every month. Yeah. So I took on a freelance gig that has kept me busy the past month. And so people might have noticed that it's been very quiet on Lambda Island. I send out a newsletter recently just to kind of make people aware of that that okay, you know,
00:42:05
Speaker
I'm sorry, but this is how things are, you know? I need to survive, and I want to keep doing this, and there's going to be new episodes very soon. I'm working on the next episode now. It's going to be about reframed subscriptions.
00:42:19
Speaker
But yeah, so I had to kind of do that, but it's been good. It's been an interesting project and it should allow me to be good again until well into next year. And then hopefully, you know, if subscriptions keep going up, maybe with a little bit of part-time freelancing left or right, I can eventually, you know, I think,
00:42:38
Speaker
Another year, hopefully less, and I can probably live from Lambda Island. Of course, we sincerely wish that it's going to pick up soon, and obviously you're on deafened now, so there are a lot of deafened listeners, we are pretty sure. I think your future is a shoe-word now, Arna.
00:42:57
Speaker
Yeah, sold, right? You're on the best vegetarian closure podcast in the world right now, like the number one. Yeah, the most listened. Most listened to, yeah. Yeah, very looking forward to. Let me quickly check how my sales are going at the moment.
00:43:20
Speaker
Anyway, seriously, it's fantastic work and I hope, of course, I'll subscribe right after this show anyway, so I was planning to. I'll do that and hopefully the listeners who are listening to it will support you and especially because you're spending your time not only on this one and also all your contribution to Closure Bridge which are way more valuable.
00:43:43
Speaker
So you need to be supported in my opinion, you know, you have to people people need to support you. So So big shout out to to to our audience so go and check out lambda island comm and I think it's it's it's

ClojureScript: Potential & Community Contributions

00:43:59
Speaker
very valuable what what the money for the price that that that RNA is charging so
00:44:06
Speaker
yeah check it out and if you sign up at the moment you still get a one week free trial so you can look at some videos see if you like it you know it's not gonna break the bank $12 a month yeah and it's like the one of those stupid grande latte bullshit crap that Starbucks sells I think I think less than that yeah yeah anyway crossed we can we can give you a little boost yeah yeah
00:44:32
Speaker
Yeah, that'd be very nice. It's been a pretty wild ride, so everything's welcome. Well, I think the fact that you're doing it, you're taking at risk for the community is pretty fantastic. You know, it's nice to see, you know, people like yourself giving so much, risking so much, you know, for this language. And, you know, we all wish you fantastic success, you know, but we don't want to stop here. We should definitely talk about some more things. But there will be a little sponsor section over there.
00:45:00
Speaker
Yeah, because I mean, I really I mean, I'm obviously doing this because I love closure, right? Like, and I really want to see closure succeed. And I think there's still a big gap in documentation. There's a lot of read me's that are just not not accessible. And so that's that's basically what I'm addressing. Yeah. And I'm really curious to see, you know, closure and closure script world domination, because I'm
00:45:24
Speaker
I'm actually getting, you know, I came for closure, but I think I'm going to stay for closure script. I'm getting more and more excited about everything that's happening there. Yeah. That's a funny thing, actually, because one of the things that David Nolan talked about, I think, in his talk prior to the Euroclosure and the Euroclosure as well was
00:45:43
Speaker
how basically Closure Script has been kind of building up over the past few years and all the kind of underpinnings that which put in initially and then gradually all these collections and then gradually all the tooling that's come on top. You can see that, like you said at the very beginning of the show, there's a lot of pain at the beginning with Closure Script. There was a couple of years ago. It's very off-putting.
00:46:09
Speaker
But what would you say the current state is? Because I think you're right that the power is there. But I still feel like there's still a small barrier to entry, bigger than I think, than the JavaScript developers have, you know, a lot bigger actually. But things are coming together, especially with things like ROM and reframe and reagent. I mean, those guys are doing pretty spectacular work. So what do you think is the next sort of, this is a long question, okay?
00:46:41
Speaker
I'm listening. What do you think the next steps are to making it a bit easier to get on board with the closure script?
00:46:54
Speaker
something that is going to make it easier to get started with ClosureScript. But I think what is going to be the next big thing for ClosureScript is going to be the improved module support. So this is something that is being talked a lot behind the scenes, but I think not enough people know about. But ClosureScript itself and the Google Closure Compiler that ClosureScript is based on
00:47:17
Speaker
are making great improvements to basically be more compatible with the existing JavaScript ecosystem. And I think that is really, you know, that's the missing key, that's the keystone that we're missing to attract more JavaScript developers and more developers in general, because it's kind of, you know, you have this language, this wonderful, nice functional language that compiles to JavaScript and JavaScript is everywhere, you know, and everyone's doing JavaScript.
00:47:47
Speaker
But tapping into the JavaScript ecosystem, OK, there's CLGS, which is already great, but it's a curated manual effort. And so the two big things that are going to come is a, ClosureScript is going to get a system for basically detecting which identifiers are external.
00:48:11
Speaker
So now when you compile your code with advanced optimizations and you're referencing libraries that are not part of your build, then those names will be mangled or completely removed and everything breaks. So Closure Script is going to get support for basically saying, okay, we don't know what this is, so we're assuming that this is external, we shouldn't change this identifier. That's already going to remove a lot of pain because now you have people, they build stuff, it works, they want to put it in production, it breaks. That sucks.
00:48:40
Speaker
The other thing, and that's probably even bigger thing, is that the Google Closure Compiler is getting support for the common JS, the format that NPM modules use. So it will basically be possible to just straight up consume NPM modules in your Closure Bridge build without anything extra. And that is just going to be such a game changer.
00:49:08
Speaker
Well, I think I was just saying there that the work of Maria in the Google Summer of Code last year was the underpinnings for this modular effort. Yes, Maria Geller has made a huge contribution. Maria Geller. Yeah. Actually, I watched a video from Closure West or The Cons last year. I can't remember which. But it was really amazing because she was explaining exactly how she made these commits to the Closure Script Compiler.
00:49:37
Speaker
And that's an example, actually, of someone coming into the community fairly new and was able to make some pretty amazing changes to the technology. Obviously with David Nolan's support, but still, people have got the possibility there of making these big changes.
00:49:55
Speaker
So the only thing, because I was asking about this a while ago, so when do we think all these things are going to land? Because they've been talked about for quite a while. So are we looking like end of this year, beginning next year, do you think? What do you think about the timescales?
00:50:12
Speaker
I mean, that is a very hard question. I mean, this is also something that David Nolan always emphasizes that things will be ready when they're ready. ClosureScript, as opposed to Closure, like Closure is an official Cognitec project and has resources allocated by Cognitec.
00:50:33
Speaker
Plus, obviously, people from the community contributing, but at its heart, it's a project that is being run and built and maintained by Cognitec in their paid time. ClosureScript also has, obviously, Cognitec people on it, like David works for Cognitec, but
00:50:52
Speaker
doing ClosureScript is not his day job. And so I think there's a good side to that in that ClosureScript is a much more community-driven effort. It's a much more transparent and much more sort of open source project, which I really appreciate. But it also means that some things just have to wait until the contributions land, until someone has the time and the effort to do it.
00:51:18
Speaker
That's one of the things where I'm also hoping through the things that I'm doing, through my screen costs, like, okay, why do I spend time talking about the ClojureScript compiler? Or why do I spend time talking about what end-repell is and how it works? This is partly to make people's lives easier, that they just know, okay, how does this stuff work so they can use it? But it's also
00:51:42
Speaker
to encourage people to dive in and to look at the code and to understand that this is all written by humans like you and me. And if you see something you can make better, then go ahead and do it. There's a lot in our tooling that still can be improved. And especially things like piggyback is essentially unmaintained. And the whole CLGS tooling system depends on it.
00:52:10
Speaker
So, yeah, I'm kind of hoping like there's already a lot of people involved in the whole of community effort around ClosureScript, but there's definitely, you know, and I wish I could do more like my, you know, again, if I could clone myself, there's so many things that I would be writing right now. But yeah, so it remains to be seen. I think to be concrete, the externs, the definition of the externs,
00:52:38
Speaker
That might not be so far away. I mean, I've seen David Nolan drop some hints that shouldn't be too hard to get in. I'm not going to put a timeframe on it, but that shouldn't be too far away. The NPM module support from Google Closure Compiler, well, that's a whole different question because it's Google. I mean, you just kind of have to wait for them. And all that we've seen so far is basically a mailing list post saying, we want to do this.
00:53:07
Speaker
Yeah, yeah. It's just no telling. There's also Lumo that has been just going on Twitter these days, right? I think the last couple of days.
00:53:17
Speaker
Yeah, yeah, yeah. So Lumo, is it Antonio? Yeah, I think so. He announced Lumo at the Closure Meetup actually last week. So I

Innovations: Lumo & Tech Stack

00:53:28
Speaker
was there. And it's a really great project. And I'm also quite excited about this because this might actually be a game changer in that respect that with Lumo. So to quickly say, Lumo is a bit like Plank. It's a standalone ClosureScript rebel.
00:53:44
Speaker
So you just launch it from the command line it launches instantly and you know, you can start doing closure script Yeah, the difference with plank is that plank is built on JavaScript core. Yeah, so this is Yeah, this is the JavaScript engine that that ships with max and with iPhones. Yeah Whereas LUMO is built on v8. So it's basically built on the same technology that that note uses. Yeah
00:54:08
Speaker
And so there's a couple of nice things about this. The first one is that it's from the first release, completely cross-platform. So I'm still having trouble with Plank on Linux, even though, I mean, they've been working on that and they've made great progress, but it's still not working on all setups. I think especially certain versions of Ubuntu, it's problematic. Whereas Lumo,
00:54:33
Speaker
works beautifully everywhere including Windows, so it's also great for teaching. And you can pull in node modules and basically call into the node module system. Now, of course, it's a bit cheating in a way because the fact that it's bootstrapped ClosureScript means that you're basically just not using the Google Closure Compiler, so you're not getting those advanced optimizations
00:54:57
Speaker
which if you're not using advanced optimizations, then yeah, all of this stuff also works in regular ClosureScript. It's those advanced optimizations that always cause the problems. But still, it's really cool. You make a package.json, you install those modules, and you say, JS require, and you're off.
00:55:15
Speaker
So for all kinds of scripting, for teaching, for tooling, I think this holds great promise. So I've been shouting out to everyone who wants to hear, check out Lumo, use it, play with it. Yeah, I didn't get a chance to play with it yet. I mean, I just saw this on Twitter, I think, since the last couple of days, I think, a bit. So it just got into my to-do list. So I really need to check that out.
00:55:43
Speaker
Okay, so because you're into ClojureScript, so maybe I should ask at least one controversial question. I shouldn't have told you you could ask anything. I was just curious, because of your screencast, I mean, you're getting into so many libraries and you're playing with them and you're making them palatable to the people who want to learn.
00:56:07
Speaker
So, what is your, if you want to start your own, obviously you built Lambda Island. I'm assuming it is built on Closure. So, this is two-part question. So, one is, you know, what is the stack that you used for Lambda Island? And the second one is, what is your preferred stack of libraries in Closure Script these days? Because there are so many right now. So,
00:56:29
Speaker
Yeah. Good question. Lambda Island itself is a traditional, quote unquote, web app in that all the HTML is generated on the server side. Yep.
00:56:41
Speaker
So it's not a big one-page app. I thought for the kind of site that it is, as much as I love doing React stuff and playing with ClosureScript, for the kind of content-driven, document-based site, it just made much more sense to keep it simple.
00:57:01
Speaker
And what I'm using there, so it's plain old composure. If I would do it over, I might use Yada and Bidi. But at the moment, it's just a bunch of composure routes. And I kind of have a bit of my own conventions of how I split them into files. And then I'm making a lot of use of Nlife.
00:57:23
Speaker
Okay. To generate HTML. So I kind of have this hybrid setup where, um, I'm using, um, and life to basically have just plain HTML files that can then act as templates.
00:57:40
Speaker
Plus I have a bunch of functions that basically look like React components, so they're just functions that return hiccup. And so those combined is how I generate my HTML. It runs on a Postgres database. I'm using Honey SQL for the database. Yeah, trying to think what else is in there. And how do you deploy it? Where is it running?
00:58:09
Speaker
It's running on a... I was going to say DigitalOcean, but no, it's actually on...
00:58:17
Speaker
What are they called again? Up cloud. Last year, about a year ago, there was the closure cup, this hackathon. We also participated in that with a couple of people here from Berlin and we built this thing called the land of Quill where people can try out Quill in the browser.
00:58:39
Speaker
And so we, we ended up winning the closure cup and one of the prices was, uh, I think it was 500 euros worth of credit at this up cloud. And so I've just been running on that. Like I haven't paid a dime yet for, you know, I'm keeping Lambda Island online. Um, yeah, so it's, it's just sort of running on a, on a virtual server, which I've deployed myself and keep up to date. Yeah. Okay.
00:59:03
Speaker
So the second part of the question, so if you were to build a spa or a single page application and enclose your script, so what would be your preferred libraries and stack?
00:59:14
Speaker
reframe, hands down. Any reasons? So I think reframe is just, if you look at where React is heading, so people, there was first React and then they realized, React goes well with immutable JS, and then people realized that, oh, React is just a view layer, we need something to manage our state and to manage events.
00:59:41
Speaker
and then Redux came about. Now you're stacking ES6 and JSX and immutable JS and Redux and all of that stuff together just to get kind of a
00:59:56
Speaker
a functional experience and basically all the same stuff you get out of the box with reframe plus you get this beautiful, elegant, list be closure script. And it's really wonderful how it, so the idea behind reframe is that you have your reagent components, that's your views, and there's a single reagent atom which is your application database which holds all your state.
01:00:24
Speaker
And then in one direction, you have these subscriptions, which are basically queries of your database that make the data flow back towards your component. But they also mean that it can be very...
01:00:39
Speaker
very efficient about realizing what needs to be re-rendered and what shouldn't be. So that's the stuff that is all going into the episode that I'm writing now. And then on the other side, you have events which can cause side effects. And there also Reframe just has a beautiful story of how you can model. So the main side effect is updating the database, and that's built in. And there's libraries for doing things like Ajax. But the way that that works is instead of actually
01:01:09
Speaker
making a side effect full call, you have effect handlers that return a map that describe the effects that need to happen. And so all of these effect handlers, they're pure functions. You can test them as pure functions, and all of the actual side effecting stuff is handled behind the scenes. And so this is a really nice design. I'm a big fan.
01:01:34
Speaker
So obviously, you're making screencasts for Reframe. So this is another probably good reason for people to subscribe to your episodes. If that pitch was anything to go by, you should check out Reframe. And if you want to learn more about Reframe, there's some screencasts. OK. I think we covered most of the topics that we want to cover. Ray, do you have any questions or any comments?
01:02:01
Speaker
Um, well, again, like you say, we could probably talk all night about this stuff because, you know, so much interesting stuff in this area, but we're coming on our mark. So we probably, you know, better let Arna get back to his screen casting and back to his work. So yeah, no, it's really fascinating. You know, I think it's, um, it's, it's been a great conversation. I've really enjoyed it. I think we've learned a lot of stuff. So, you know, I'm happy to kind of start wrapping it up, but if you want to have a few more bits and pieces VJ.
01:02:31
Speaker
Yeah, of course. Obviously, Arne, thanks a lot for joining us and sharing your experience with Closure. Yeah, thank you. Thanks for having me. It was really nice. It's been a pleasure. Yeah, it's been a pleasure. And I just wanted to do a quick round on what events are happening around in Closure. So obviously, Closure Conch is going to happen in December.

Upcoming Events & Community Engagement

01:02:55
Speaker
This year, the closure conch on December 1st to 3rd in Texas, Austin. And this time, Rich Hickey is going to keynote it. So it's been a long time since we saw Rich Hickey on a keynote. Yeah, curious if it's going to be another classic Hickey talk that we can share for years to come.
01:03:17
Speaker
Exactly. And there are a couple of events coming up. ClosureD is in February, I think. Yeah, exactly. That's here in Berlin, the German Closure Conference. I think it's end of February. Yeah, yeah. ClosureD. And I'm not sure if the RFP is still open, though. The CFP closed last week or two weeks ago, I think. Oh, OK. But that sounds like a very fantastic conference. I've been there maybe this year. I'll try to see if I can join.
01:03:44
Speaker
And if you want to meet the whole, you know, like I said, we have a really nice community going on here. So you really should come. I know it's winter. It's not the best time to visit Berlin. But, you know, we'll we'll keep it warm and, you know, cozy inside. Of course, of course. I mean, I'll try my best. And and I am part of just another quickie there. There is this closure exchange in London as well. Oh, yeah. In December, the first and second of December. So that is true. Yeah, it's also coming up. Yeah. Oh, so there are two conferences happening at the same time then.
01:04:14
Speaker
So conch in the US. And yeah, as I was saying, last week or something, I got together with organizers of the Dutch Closure Day. We were organizing it last year as well. I was part of the organization of Dutch Closure Day in Amsterdam. And for the long time, probably the long time listeners of the show know that Deaf and podcast originated at Dutch Closure Day, or at least the seeds of it.
01:04:44
Speaker
We are planning to do the Dutch Closure Day again next year. I think the date is probably March 25th. We're still organizing some details and figuring out how the conference is going to be. So those are the, I think, news and events happening. And obviously the big news is Lumo that we talked about a bit that happened in the closure world these days.
01:05:07
Speaker
So I think that's it from me as an update. Back to you, Ray. We're experimenting with a format this time, let's say. Exactly. Back to front. Thank you very much. Thanks a lot, Ana, again. We probably just need to make a few shoutouts to
01:05:28
Speaker
to the people that help us to put this all together. We have Pizzeri, who does the music, and he has SoundCloud, which you can listen to. We also have a shout out to Wouter, actually, who started to take over the editing. He's also doing some video editing for us. So shout out to Wouter. I'll put his details in the show notes as well. And then finally, we have the credit to the designer.
01:05:56
Speaker
Yeah, I think you've got more information about that. Yeah, Lubov. Our logo and everything has been designed and we were able to distribute some stickers of DEFAN and they were very popular at Euroclosure. All of them are gone. And we were able to also give some nice DEFAN limited edition mugs to the people who were kind enough to talk to us at DEFAN on the video.
01:06:23
Speaker
So, it's designed by Lubov, and of course we'll add our information into the show notes as well. So, if you need any design work or something, don't forget to keep these people in mind. Yeah. Yeah. Right. Nice. Okay. Well, brilliant. Thank you very much. All right. Thanks, guys. Yeah. Bye. Bye.
01:07:04
Speaker
you