If you've listened to the last episode, you know what is coming next! It is time to get take a Vue at the other host of this podcast. Michael is asking Alex all around his past - from how we got into programming and web development, if university was worth it and how he got into the Nuxt Core Team. Also don't miss out how Minecraft is part of the history, what non-tech job Alex would do if programming wouldn't be in the cards, and why is GitHub account is over 14 years old.
Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Chapters
Welcome to DejaVue
What are you doing for work?
What patterns and bad/best practices have you noticed?
How is it being on the Nuxt team?
Joining the Nuxt team
How did you get into programming?
From Gaming to Modding and Programming
Getting into Web Development
Founding a company
Which courses from university stood out?
What happened between uni and now?
When did you start doing YouTube and why?
Quickfire
Why did you move to Amsterdam?
Do you still Minecraft or other games?
What topic you could give an impromptu talk on?
Wrapping up
If you've listened to the last episode, you know what is coming next! It is time to get take a Vue at the other host of this podcast. Michael is asking Alex all around his past - from how we got into programming and web development, if university was worth it and how he got into the Nuxt Core Team. Also don't miss out how Minecraft is part of the history, what non-tech job Alex would do if programming wouldn't be in the cards, and why is GitHub account is over 14 years old.
Links marked with * are affiliate links. We get a small commission when you register for the service through our link. This helps us to keep the podcast running. We only include affiliate links for services mentioned in the episode or that we use ourselves.
Creators & Guests
Host
Alexander Lichter
Web Engineering Consultant • Founder • Nuxt team • Speaker
Host
Michael Thiessen
Full-time Vue educator
Editor
Niki Brandner
Audio Engineer and Video Editor
What is DejaVue?
Welcome to DejaVue, the Vue podcast you didn't know you needed until now! Join Michael Thiessen and Alexander Lichter on a thrilling journey through the world of Vue and Nuxt.
Get ready for weekly episodes packed with insights, updates, and deep dives into everything Vue-related. From component libraries to best practices, and beyond, they've got you covered.
Michael Thiessen:
Welcome to DejaVue.
Alexander Lichter:
It's your favorite Vue podcast. You just don't know it yet or maybe you do. I mean, we're almost, like, on the road to our fiftieth episode here and, well,
Michael Thiessen:
Almost a year of episodes.
Alexander Lichter:
That's that will be crazy. Yes. Yeah. Even with all the specials, I mean, the the podcast almost turning one year old. Maybe there will be a little
Michael Thiessen:
We have to do a a special one year anniversary thing.
Alexander Lichter:
Reading my mind there, Michael. I love that. And if someone just, like, joined for that episode, I'd be like, hey. Who are these guys speaking? Well, first of all, my lovely host, Michael Thiessen, is here.
Alexander Lichter:
He's a, full time creator around the Vue and Nuxt ecosystem, has a lot of amazing courses, working on Mastering Nuxt version four right now as we speak. Of course, not doing the recording, I hope. And besides
Michael Thiessen:
Not that.
Alexander Lichter:
Good. Good.
Alexander Lichter:
And, of course, besides that, a lot of great blog posts, also some YouTube videos and some streams here and there. So, yeah, also, you can find him on all the social medias. He has an amazing newsletter as well with weekly tips.
Michael Thiessen:
Yeah. Thank you. Well and we just did an episode on myself where, Alex here interviewed me. So if you wanna know more about my story and how I got into this and doing all of this, then, you can go check that out. We cover some interesting stuff.
Michael Thiessen:
Of course, it's about me. So, of course, I think it's interesting. But maybe you think it's interesting too.
Alexander Lichter:
It is.
Michael Thiessen:
It was. This week
Alexander Lichter:
Learned a lot.
Michael Thiessen:
We get to, we flip it around, and I get to talk to Alex about how he got to where he is now as part of the Nuxt core team, doing stuff on YouTube, consulting, and, yeah, just being in general all around awesome guy on the Internet.
Alexander Lichter:
Thank you so much.
Michael Thiessen:
And in Person. He's awesome in person too. So
Alexander Lichter:
Yeah. I'm a total douchebag in person like, yeah. Whatever. No. No.
Alexander Lichter:
No. If you if you ever
Michael Thiessen:
Wouldn't that be wild?
Alexander Lichter:
I mean, there are probably some people who are like that, but I think especially in in the Vue community. I've, like, I've never met people in Vue community, but, like, Yeah. No.
Alexander Lichter:
They're all, like, super nice guys. And if you meet anyone in the community that you're, like, recognized, like, hey. I I know the nickname, the GitHub picture, whatsoever, then just go there, say hi, and, and and chat. We're all, like, we we don't buy it. We're we're super super lovely people.
Alexander Lichter:
At least all the people I've met in the community and meetups conferences definitely do that.
Michael Thiessen:
For sure.
Michael Thiessen:
Yeah. People generally seem to be worse online and nicer in person. So
Alexander Lichter:
Yes. That's fair, especially with, like, takes and rants and, yeah. That's that's true.
Michael Thiessen:
So let's talk more about you, Alex. So what are you doing right now? So you obviously you gotta do something for work to earn some money. How how are you doing that this day like, today, this week?
Alexander Lichter:
Oh, yeah.
Michael Thiessen:
What things are you, doing?
Alexander Lichter:
It's tricky. So let's say what pays the bills is consultancy. So basically, everything around Vue and Nuxt applications, and sometimes things attached to that and and bigger projects. Especially companies reach out, say, hey. We have an application.
Alexander Lichter:
Let's say common cases. We have it in Nuxt two or Vue 2 We want to migrate it over to v3. We don't have that much, well, experience in that because usually you do it, like, once or if you have a few project, you maybe do it a couple of times. But, ideally, you wanna hit it right the first spot.
Alexander Lichter:
So they say, hey. Can you help us? Because, well, I I've seen a lot of applications and help migrating, so I can help with my knowledge there. Mhmm. And same for, like, generally consultants, stuff with, oh, can you help us with performance problems, with architecture, with, yeah, hitting certain KPIs or just saying, hey.
Alexander Lichter:
We want to build a new application with with you or with Nuxt, and we don't wanna mess it up in the first place, especially if we don't have, like, people that are super trained and have, like, year long experience. So it's a bit of, like, shepherding and, guiding the the whole migration or greenfield project towards its right goal.
Michael Thiessen:
Are you committing code and, like, sending over PRs, or are you just, like, giving advice and lending your expertise more so and then like, how how exactly does that work?
Alexander Lichter:
Yeah. So it it also depends from project to project. Like so what I usually start with is I like, if if I get onboard and there's an application already, I usually take some time. We have a little kickoff call. People tell me, hey.
Alexander Lichter:
This is what the application should do. Here are some, well, some caveats. Here, maybe some things that are already weird to us, so the list of things that I can especially take a look at. And then I start reviewing. So it's more like reading the code, trying to understand it.
Alexander Lichter:
And because as I said before, I've seen a lot of Vue and Nuxt applications. The structure is usually the same. A lot of packages are similar. Of course, each has their quirks, and sometimes I'm really, really surprised what people do with these frameworks or what people tell me they do and then maybe at some point show. Like, I I heard interesting things.
Alexander Lichter:
For example, what Justin said in our episode with with Justin Schroeder. Like, oh, yeah. We ran Python in the back end, like, Python tasks. I'm like, that's interesting. I would love to hear more about that.
Alexander Lichter:
So especially with, like, bigger enterprise applications, they have all their weird quirks and and requests. So, yeah, for me, it's reading through that, making notes in terms of, oh, are the typical things that I see that are, like, problematic or that could cause some issues, but they are fine in this case. There are some common mistakes, which is, for example, also why I'm, like, make a lot of content creation besides consultancy. We'll come to that a bit, I guess. So I usually point like, hey.
Alexander Lichter:
Here is a common mistake. I don't wanna repeat myself. So I don't know. Read that blog post. Watch the video if you wanna know more about that.
Alexander Lichter:
In this case, it's like, hey. In this line, you should do that differently, but that's that one case, and maybe there are 10 more. So that's that. Sometimes there's also the request of, like, hey. I want to build a certain feature into my application.
Alexander Lichter:
Can you give me a little proof of concept? Can you give me some kind of blueprint? Or even, like, can you actually build that feature, implement it, or can you, yeah, review a PR where people did this? But the actual programming task is rather rare because, well, mainly, it's also a budget thing and, velocity as well. I mean, usually, people have developers that program and I'm there to guide things along.
Alexander Lichter:
So my my hours are used to benefit the most for the company and for the project. But it's also happening that people say, hey. We are we're short on that or, okay, our developers could do that. It could review and we have a feedback loop or get us started, write a little template, boilerplate, POC. And, from there, we'll we'll take it over.
Michael Thiessen:
So in your work, you're seeing lots of different projects and stuff. Have there been any interesting things that you've learned or patterns that you've seen? I don't wanna ask you for, like, bad things that you've seen, so you're, like, you know, publicly, calling people out. But just like yeah. Because I'm sure that the like, I don't get to see lots of people write code.
Michael Thiessen:
I get to see what what you put out online, but it's not it's always, like, smaller examples that people share that's never, like, full apps and, like, how how do we do, like, these big big things. So how are there interesting patterns that you've maybe things that you've learned or even just, like, things that you've noticed, oh, people tend to do this this way and and not this other way?
Alexander Lichter:
Yeah. So, of course, no, like, shame on anyone. We're all learning, and I really hope that my code examples that I put out are not short. But it the the the shortness is indeed an issue. That's why I'm also really happy to see a lot of applications out there and also can dog food that back to, like, hey, maybe we can improve documentation, or there's, like, a long form content piece that needs to be made about that because I see that problem in two or three clients.
Alexander Lichter:
Pattern wise, I think a lot of people misuse composables. So, like, they treat them like, oh, okay. It's just a JavaScript function, which is almost true, but you should call it in a Vue or Nuxt context. So they don't really do that, like, calling it in event handlers. So, like, an on click handler.
Alexander Lichter:
I like bootstrapping composable, like, useFetch from Nuxt there. I've seen it countless times also when I'm around the Discord, so as a Nuxt team member, like, answering people there in my, let's say, spare time, also, like, fully like, voluntarily, so to say. So there, I also see a lot of patterns that I also find enterprise applications, especially people that are not super proficient in in Vue and Nuxt and not don't know much about composables. Like, okay, I build, let's say, a service architecture, use classes, and there's, in general, nothing wrong with that. But then they put composables in the classes, and then they instantiate the classes once somewhere else, and things blow up a little bit.
Alexander Lichter:
So instead of saying, okay, we use our services in these composables, like use use async data and then use a class in there or, like, any kind of other object for a repository pattern, for example, which is apparently super common when you do, like, OOP. They do it the other way around, and that messes up with the context. And especially writing async composables is is always tricky. Daniel Roe has a very strong opinion actually on these, says, hey. Better shouldn't write any kind of async, like, with the keyword async composable.
Alexander Lichter:
So whatever you have should always be, well, non async by default. It can return a promise or, like, it can return a whatever use fetch returns and so on. But the asynchronicity should only happen, like, the asynch keyword and the wait keyword especially. That should be part of your component because there, you can handle all these, let's say, asynchronic's gotchas and caveats. So, yeah, I've seen that these are common problems, unfortunately.
Alexander Lichter:
Even though I think, like, nowadays, the the Vue docs do a really good job explaining composables, but, yeah, async stuff is still hard sometimes.
Michael Thiessen:
I found, like, the thing with async is that if you have an async function and you wanna use it anywhere else, then that also has to become async. So you have like a composable that's async, let's say, then, oh, you wanna use it in another composable or somewhere else, then, okay, now you have to rewrite that to be async, and then it can, like, trigger this, like, cascade. And then all of a sudden you're like, okay, now you gotta handle, like, this loading state a little bit differently, and it can cause, like, a whole bunch of headaches. So I also like to just keep it synchronous if I can, and then, yeah, go from there.
Alexander Lichter:
I think what you also can do, like, of course, in in plain JavaScript or TypeScript, you have the same, let's say, quote, unquote problem. If you have something that's async when awaited, that function has to be async as well. And at some point, you have to do something with the promise, either just, like, ignore it or, let's say, I don't know, run function for, like, a very simple, like, script that you're like, okay, everything is async, like, have have, like, an IIFE, immediately invoked function expression to just, like, run that. In Vue components of composables, what you can do as well is if you wrap something that's async, I don't care about the promise. I basically make it reactive by saying, okay, this returns something by default.
Alexander Lichter:
It's null. When the promise is resolved, like, with the then change the ref and output the ref or the computed. So it's a bit more, let's say, asynchronicity through actual, like, reactive primitives. So, like, through a ref that will change whenever it's executed. Right.
Alexander Lichter:
I think an easy example there is, VueUse's useAsyncState, which is basically doing that to put in URL and say what you wanna request the same with, like, use fetch or, like, an async function, and then Mhmm. The things will change. Same in Nuxt's useAsyncData. There is a bit more around there. And then you can work around that.
Alexander Lichter:
Or what you can also do, if you really need to work with the promise and want to give quite some things back, you can just say, okay. I don't await it. I just say const promise equals whatever and then return the whole thing, which doesn't make it async straight away. You can decide to, well, ignore that or, like, to await it higher up.
Michael Thiessen:
Yeah. There are solutions. It's just
Alexander Lichter:
It's tricky sometimes.
Michael Thiessen:
Well, yeah, it's yeah. It's tricky sometimes.
Michael Thiessen:
That's true. So you mentioned you're on the Nuxt core team. So I know we've seen on social media and stuff like that. Every once in a while, you you have a meetup, you get together, and you you do Nuxt things, make some Nuxt cakes, and go bouldering and and whatever else you guys do. But beyond that, the day to day or week to week kind of next core team things, like, what does that involve?
Michael Thiessen:
You're on Discord helping people, but you could be on Discord helping people even if you're not on the next core team. Right?
Alexander Lichter:
Absolutely. Yeah. And I I would encourage everyone who has the time to, like, help people be it on, like, GitHub or, like, help us as well, like, fight issues, help people with your experience or expertise just, like, with suggestions. We have a lovely community of people, and, of course, not all people who help are in the core team or, like, the ecosystem team, so to say. I also think it is like, I would see it from the exact opposite.
Alexander Lichter:
It's not like, of course, I it's not like I have people because I'm on the core team. It's more or less like I am on the core team because I help people. It's like I contribute. And I I joined in 2018. So in September 2018, it's also been a while.
Alexander Lichter:
And in the end, I would always see it as some kind of, let's say, honorable mention or, like, title or, like, say, recognition for what you've done for the community, the project, whatsoever. So in terms of responsibilities, there isn't something that, like, okay. You have to, I don't know, work on these issues or whatnot. So unlike a company, it's really more like, hey. You contribute to the project.
Alexander Lichter:
You did it before. Otherwise, you wouldn't wouldn't be on a team, and you can do it in your way. Of course, you're up to say, hey. I'm interested in that part. I wanna, pursue this issue or this pull request.
Alexander Lichter:
I wanna give this a try, then collaborate with other people on that or people will be like, hey. It's great. Let me know if there is, anything to help you with. But you're not really forced to say, hey. I, I have to work, or, like, you have to work on a certain party.
Alexander Lichter:
You have to be active in the Discord for x hours or try issues. This is something, of course, I do to give back to the community help and also to, well, make the project grow more more successful, more stable, and so on and so on. Right.
Michael Thiessen:
So it's not like a job where you you applied and said, okay. I'm good at programming. I know how to do this stuff. And
Alexander Lichter:
No no.
Michael Thiessen:
Can you let me in?
Michael Thiessen:
And then they're like, yeah. Sure. Here you go. But it was the like, the other way around. Just sort of it was more earned rather than yeah.
Michael Thiessen:
Like, it wasn't just handed to you. You're just doing stuff
Alexander Lichter:
I didn't request it or anything
Michael Thiessen:
And eventually
Alexander Lichter:
Yeah.
Michael Thiessen:
Yeah. Yeah.
Alexander Lichter:
So
Michael Thiessen:
Which is another interesting point because, like, with open source, and I've heard a bunch of people say this too of, like, you can just start and contribute Yeah. And there's no one gatekeeping or preventing you, and you can help in your own way
Alexander Lichter:
You don't need permission
Michael Thiessen:
you want. And yeah. Exactly.
Alexander Lichter:
So I I also think, like, it's important that this has been seen this way. Like, if you're, like, out there and someone's like, okay. My goal is to become a core team member. Well, what does it mean, actually? Wouldn't it be better to say, hey.
Alexander Lichter:
I want to, let's say, push that project forward. I want to make it more amazing. Like, basically, your goals should be the values that comes the ones that you're recognized for being a core team member, not the fact of of being one. So, for example, like, I I started using Nuxt in, like, late 2017, early 2018 or so, so it didn't took that long to get like, to become part of the core team. But I also like, I started very simple with, like, okay.
Alexander Lichter:
PRs to the docs, improvements here and there, examples with, like, Tailwind back then because, well, that was a a big thing. It was a big Tailwind, fan since before it was released. So it started there using it. And back then, when Nuxt two wasn't there yet even, it was to, like, Nuxt one time. There was still, like, Nuxt Edge for a while.
Alexander Lichter:
I checked out some modules. I built some own applications and realized that there are lots of things missing, not necessarily in the core, but, like, in the module ecosystem. So I built some modules. I contributed to a few things, and then I got in touch with Pooya, for example, with Sebastien. They basically also got in touch with me.
Alexander Lichter:
He's like, hey. Great contributions. Let's chat on Slack back then. Then we moved to Discord. And it was really like, for me, it was really random.
And, it was pretty amazing. And I was like, yeah. Wanna, like, go there? Let's meet up, and we can, like, get you in and everything. Just have to, like, book a flight in a hotel.
Alexander Lichter:
And I was like, that's pretty sick. So I've never been to, like, a a big view conference before. I think, like, one or two program conference was, like, the vibe is pretty amazing as we probably also say most of the times here. And it it really is. So I wanted to go there, of course.
Alexander Lichter:
But also in September, I started an internship in Dublin, Ireland. So I moved from Germany for, like, half a year over to Ireland. And, officially, I think the problem was was, like, I don't know, my my second week or so, and I had to ask, like, boss, hey. Can I take a day off to go to that conference?
Alexander Lichter:
Before I asked, like, I had no idea how that will be, but my my boss, like, she was super cool with it.
Alexander Lichter:
Like, yeah. Go for it. Do that. Amazing. So I did exactly that.
Alexander Lichter:
And there, I met Sebastien and and Alex Chopin for the first time and also, well, got in touch with a lot of people from the Vue community in general. And, it was it was pretty amazing. Then when they had their talk or, like, Sebastien mainly, it was like before, it was like, oh, yeah. Congrats. You're on the core team now, and you're there on the slides.
Alexander Lichter:
And I was like, woah. What's what's happening here? So that's, yeah, that that's kinda how I got into that after, yeah, contributions to modules and also to the core to quite some things, which I've done to that much anymore. Like, my focus shifted a bit, but back then, that was definitely the case.
Michael Thiessen:
Yeah. That's that's cool how it was just like, I guess, an organic way. Maybe that's the right word of saying it. It just sort of, it just made sense. Like you had contributed, you had done all this work you had been helping out.
Michael Thiessen:
And so it just made sense that you would be included as as part of that recognized that you were one of the people who are really helping making this project happen.
Michael Thiessen:
So you covered a little bit just now about how you got into the Nuxt core team.
Alexander Lichter:
Mhmm.
Michael Thiessen:
You also we've covered you do consulting. I'm sure many people are wondering how you actually got into consulting. And I I suspect that there's a link between the helping with the next core team and and the consulting. But before we get to that, I'd like to maybe go a bit further back.
Alexander Lichter:
Mhmm.
Michael Thiessen:
Maybe a lot further back. I don't know. We'll we'll see. But how did you get into programming? Were you, like, one year old just, like, you know, at the computer typing away?
Michael Thiessen:
Or how did you how did you discover programming and and discover that you you liked it?
Alexander Lichter:
Yeah. So I was told I can't fully remember that. But when I was three years old, my grandpa
Michael Thiessen:
So not not far off.
Alexander Lichter:
No. No. No. Not far off. So my grandpa was really into computers, like, since since they were on there.
Alexander Lichter:
He worked, like, in a big, it's not like computer center, but more like a calculation center, hard hard to translate. But, like, back then when they you had, like, the the cards, with the the punch cards, everything, and then got upgraded and so on. So he worked there, and he was always interested in computers. And, yeah, when I was three years old, he also, like, put me in front of it. Apparently, I I had a lot of fun.
Alexander Lichter:
Of course, I had no idea what I'm doing because I was three. But it seems I I really enjoyed it somehow. And then, like, when I was a little bit older, like, I played some games on the computer. And, it's yeah. It was a lot of fun.
Alexander Lichter:
I seem to be fine using it. And when I was, like, a teenager, I wanted, of course, my own. Or, like, when I went to high school, I was like, yeah. It would be nice. And before, I also, like, did a bit of computer stuff with my mom, like, surfing through the Internet, when it's, came up in Germany, where where I grew up.
Alexander Lichter:
Got my own email address after the husband of my cousin was like, yeah. Just tell my mom, yeah. No. It's it's time. He usually got his own email address to, like, own stuff and log in and that yeah, really moved that forward.
Alexander Lichter:
And at one point, I was, yeah, I was playing games. I was using stuff, but I was wondering, okay. But someone has to create these things and, like, how to do this? Because it's fun to be a a user of a thing, of course, but, like, I wanted to know, okay. How does it work behind the scenes?
Alexander Lichter:
And maybe can I do also, like, I don't know, a little browser game or whatnot? Well, never did at least on that scale, but, there there were there were quite some ambitious, points there. So, yeah, I started, like, looking into a few things, but I don't know. It was, like, when I was, like, 10, 11. And but actually, programming started with thirteen years.
Alexander Lichter:
This really, like, hit the door where I was, like, okay, I wanna I wanna give it a try and do new things is when I discovered Minecraft. So, yeah, that legendary game, I played it a lot. It was fun. And, there was, of course, also a way to play multiplayer, but it was very boring. It was still in I think when I tried it first, I was in alpha and then, like, in in beta and so on.
Alexander Lichter:
So there wasn't crazy like, there there weren't crazy things to do. You could play together, but that's it. And there were some multiplayer modifications, so, like, mods you could install on your server to do better things, more things, more capabilities. And back then, there was a mod called hey zero mod. So the heck hey and zero, but, like, Puya's handled with pi zero, but, hey, and no underscores.
Alexander Lichter:
And, that was written, like, in c plus plus. And the guy was like, hey. I can't maintain it anymore. I'm sorry. So I was that close to look into c plus plus but then, it was it was gone.
Alexander Lichter:
And there was a new mod cap app that was called Bukkit, so b u k k I t. And that was built with Java, fully made in Java, like Minecraft itself as well. And, they could do amazing things. So I was like, that's cool. Why not learning Java now?
Alexander Lichter:
And, indeed, I learned Java. It was interesting. I think I'm happy that I don't do Java every day now anymore. I'm glad with everyone who enjoys Java. For me, it was a lot of boilerplate, but it really helped me, like, figuring things out with, like, strong typing.
Alexander Lichter:
And I think especially, like, when I started, I did a few things like, okay, you check out some tutorials. And, with, like, back then time of Eclipse with, like, an open source editor, and it looked Yeah. It looked very old as well. So, yeah, I tried to, like, build some things and, some, like, also things detached from Minecraft at first. But my goal was, like, to build a little, like, say, plugin for this for the server modification.
Alexander Lichter:
And I, yeah, created new classes and this and that. And I remember, like, I was following some tutorials. I was looking at some source code, and I was, like, writing the constructor of a class and always try to assign some kind of instance with, like, okay. Instance is, like, a a field, like a public class variable. It's like, this instance is this and that what I pass.
Alexander Lichter:
And back in time, like, my 13 year old me, I never understood what what this was doing, but without it, it didn't work. So it's just like, at some point, I was like, wait. This is why I do it because I need this to access here. So it took a little bit, especially because, well, before you see actual results in Java, except, like, console logs and stuff, and, like, get into, oh, I have to integrate this, like, third party thing to make this and somehow build this. It wasn't that easy, but it worked out.
Alexander Lichter:
And eventually, I created, my my very first plugin. It's, I think, still somewhere online. And it did something really stupid. So basically, in the game, if there was, like, a thunder, lightning, a thunderstorm, and the lightning would hit, I think, a pig, it would just transform into a different character. This was all the things it did, but it was something that hasn't been done before.
Michael Thiessen:
Oh, okay.
Alexander Lichter:
It was totally pointless. I think, like, it alert like, it put a little chat message out. But I was like, okay. It works. It's simple.
Alexander Lichter:
It's slightly scoped. And, yeah, that was the the start of it. And then from there, I explored more and more and built built more Minecraft stuff, actually, and even eventually landed up in so there was, like, a big forum, a big big website where people could upload their plugins so they can be downloaded. I maintained a few things here and there. A lot of them also open source.
Alexander Lichter:
I also wrote my first open source issue on GitHub back then in time, which was really horrible because it was no reproduction, no clear error message. Just like, hey. This this doesn't work. I I might link it in the in the show notes. It was, like I sometimes checked it out because, like, even the maintainer wrote something or, like, in the second issue, it was like, yeah.
Alexander Lichter:
Thanks for this very helpful issue. This, like, yeah. What what should we do now? It's always nice to remind that, like, okay, I also started as a as a new pet, no idea what he's doing. And, but eventually, I I made it up to the staff, like, when I was 16, I think, on that, website.
Alexander Lichter:
So basically, what we did is we reviewed source code to make sure there's no, like, malicious stuff in there, no, I don't know, keylogger and whatnot, and, approved the plugins on that side. This is all Internet history because the forum doesn't fully exist, It was migrated, but, yeah, that's what happened.
Michael Thiessen:
Wow. So you're doing open source, like, the whole time, basically?
Alexander Lichter:
More or less.
Michael Thiessen:
Before before Nuxt. That's that's pretty cool.
Alexander Lichter:
It's really funny because I didn't really consider it as open source. I think my first actual touch with open source was not like, okay. The plugin code was more or less available there, but I didn't, like, push much on on GitHub. Or maybe I did hear about, like, not, like, consciously of, like, hey. I'm the maintainer of this.
Alexander Lichter:
I'm like, hey. I published a new version on that that forum slash dev page there, and people can use it, but people can, like, reverse engineer it. It's like Java is easy to to de obfuscate and decompile. Mhmm. I think, like, the sense of also, like, collaboration was, yeah, was really there.
Alexander Lichter:
And also getting in touch with people that eventually landed on the Minecraft team was, was really cool with like, yeah, 16 was a fun thing besides school.
Michael Thiessen:
Yeah. That is pretty neat. I remember trying to, well, I, I poked around with the Minecraft plugin stuff a little bit. I never really like gave it a serious try, but it's interesting how many people end up in programming through video games.
Alexander Lichter:
Oh, absolutely.
Michael Thiessen:
Like myself, the last long time, I've not been able to like play any video games. I don't know what it is. I like will play it for, like, a day, and I'll be like, yeah. This is great. And then immediately lose interest.
Michael Thiessen:
So I don't know what what it is. But I used to play a lot more, and or one of the first things was, can I build a a video game? And so I started by trying to build a, like, a three d world editor game where you could, like, set up the map and, like, put a add the objects to it and stuff like that, which was extremely ambitious for a 12 year old who had no idea how to program. So
Alexander Lichter:
Dude, that.
Michael Thiessen:
I I didn't get anywhere with that. But even a lot of the people I went to university with got into programming through video games, and they were like, I like video games. And so I wanted to I wanna know how to build these things. And so, yeah, it's really interesting how that how that happens.
Alexander Lichter:
I think it's also because, like, okay, you do something that's like, hey. This is so amazing. Maybe, like, oh, I wanna do my own version of that, like creativity or just, like, hey, wanna give that feeling to other people. Or just, like, okay, how does that work under the hood? Especially the whole modding community, a lot of people that are, like, modding games, they eventually end up in in game studios or having their way of programming.
Alexander Lichter:
Sometimes it's also, like, not related to game at all. So I know someone who's, responsible. Like, no. I there was some guy out there. He is, doing basically a loot filter for an ARPG game where you have tons of loot.
Alexander Lichter:
It's like, oh, the good quality, what fits to you, what's happening. It's all customizable. And he wrote an own language for that, so he can build it up. It's, like, it's crazy. And he's a, I don't know, a solution architect in real life, like, for a paid job.
Alexander Lichter:
So a modder at night, more like, games and and doing, some IT stuff throughout the day. I think it's a huge enabler. And I know a lot of people, like, also caught interest because of that. They're like, okay. I wanna do, like, Unity and tutorials and this and that.
Alexander Lichter:
And I mean, in the end, you also all learned it because it was very accessible. Like, there are programming tools out there for free. There's so much knowledge on on YouTube, especially if you're a star. It's like, hey, I'm a I know. I'm a teenager or I'm a student.
Alexander Lichter:
I have $0. I wanna learn a language. You can easily do that, like, from free code Codecam over to YouTube, as I said before, definitely worth doing. The more specialized it gets or the more, like, I don't know, oh, I'm using this specific framework. I wanna know more about that.
Alexander Lichter:
You either spend a lot of time in your day job when you, of course, are in programming, or you say, okay. I don't know about buy a very specific course and and go through that. That's always, like, either have it in a very nice and compact form. It's, like, nicely structured, and there's information. Like, maybe I can find in, like, a GitHub issue there and Stack Overflow there and this and that.
Alexander Lichter:
So or the source code itself, but it's always easier, of course, to someone, with knowledge can explain that.
Michael Thiessen:
I think it's also interesting how, like, mods for Minecraft or for any other game is seems like a more accessible way of getting started than just writing your own game because Yeah. Like, it's a lot to to put together a whole game, but, like, you can add a little feature that does something very small with a mod. And same thing with open source where you could fix a small little bug or add on a little feature, and you don't have to, like, build your own meta framework for Vue. You can just adjust to tweak it a little bit, add a little thing in there and that yeah.
Alexander Lichter:
Yeah. Or just to even build a module. I think this is in a way, that analogy works very well too. So you don't have to build meta framework. You can just build a module or a plugin or whatsoever that allows you to do things you want.
Alexander Lichter:
So this is, I think, also why, in a way, the the Vue community is very accessible. Like, you also don't have to bother about, oh, I don't know, library and publishing and this and that necessarily. Like, okay, take the module builder, for for example, Nuxt. You get started. There are a lot of things set up already, and and you can do what you want.
Alexander Lichter:
Ideally, it's already in your own project that you did before. You have to generalize it. So that always was very appealing. But yeah. Like, I I remember okay.
Alexander Lichter:
I was I was 16. I was in there. Then some people from from the Bukkit team got hired, and the whole thing fell apart a little bit because that was so lucky. That was Mojang, the company who is behind Minecraft before they sold it to to Microsoft. Right?
Alexander Lichter:
And then they hired the people from the Bukkit team. There was, like, a little drama. And then I also think I got, into into a lot of other things. For example, I at one point, people were, like, writing me messages saying, hey. We need some custom stuff.
Alexander Lichter:
Can you build this for us? And I was like, no. I don't have the time. And then people are like, well, we can pay you. And this, in a way started to, like, get a little bit of, well, side money, so to say, well, pocket money, when I was still younger.
Alexander Lichter:
So I built custom, plugins for some bigger Minecraft servers who then, like, I don't know, sold premium stuff and also got the money themselves. So, yeah, that was a very interesting time. And it even wasn't some kind of it was not a hacker forum. It was, like, a general, like, developer game enthusiast forum and so on. So I was also quite active there and also did some, like, little programming tasks here and there.
Alexander Lichter:
It was interesting. But at some point, I was like, okay. I wanna build an own website, obviously, so I can, I don't know, offer my services, make little customer portal so people can send requests? I can say, hey. This is how much it is.
Alexander Lichter:
They can, I don't know, confirm that, send the money, and then I can get started? Of course, there are solutions for that already, but, hey. A lot of time as a teenager, let's just build it yourself. And it's also good learning. And that's where I got into PHP. So
Michael Thiessen:
Ah, PHP.
Alexander Lichter:
Yeah. It was a lot of fun. At first, I was like, oh, yeah. Let's do a bit of, like, content management systems, like Joomla, WordPress, and so on, and then play in PHP. And from there, I quickly got into things like CodeIgniter, also mentioned a couple episodes before as well, and, eventually, Laravel.
Alexander Lichter:
And I think that was roughly the time where, also, I founded my own company, like, after a levels, roughly. I mean, I founded my company for sure after a levels, but then, like, I also got in these in these frameworks because then it was okay. An own company, we do websites for SMEs for small, medium enterprises, very basic stuff. So content management system, but at some point, it was like, okay, more complex things where I have to get into advanced and proper frameworks for, like, custom solutions.
Michael Thiessen:
So how old were you when when you started this company?
Alexander Lichter:
18. Yeah.
Michael Thiessen:
Okay.
Alexander Lichter:
It was almost almost ten years ago. Yeah.
Michael Thiessen:
And so this company, was it you kind of transitioned from okay. So you were getting paid due to some stuff for, like, Minecraft community
Alexander Lichter:
Yeah. Yeah.
Michael Thiessen:
And things like that. To were you building websites for people at this point, or was it, like, some Minecraft stuff? Was it, like
Alexander Lichter:
None.
Michael Thiessen:
Did you, like, slowly transition, or was it, like, a hard flip?
Alexander Lichter:
It was more of a hard flip because the Minecraft stuff at some point when the drama intensified more, and then also, like, a levels, I didn't really have time for that anymore. Like, there's not much. There were me, like, a few requests from from people I knew, but, yeah, nothing big anymore. And, yeah, with my PHP knowledge and look into all, like, the content management systems, I built up a, I think, quite reasonable page back then with, like, plain PHP. And I was like, okay.
Alexander Lichter:
Great. We even like, we learned it in school. I I knew that. But before already, that worked all pretty well. Had, like, big bigger things built up there.
Alexander Lichter:
I know something like, okay. I can generate, like, a one time link for something to download so people can't download more often. But, like, yeah, from the company, it was a crazy coincidence. So after a levels, I was, like I I did my a levels in the more rural area of, of Germany, and we were, like, sitting in a at a friend's place for, like, some kind of, let's say, village festival. And, like, the family the the mom came in.
Alexander Lichter:
We're, like, couple of teenagers. He was like, hey. Yeah. Folks, can can anyone here, can anyone here create a website by any chance? And I was like, yeah.
Alexander Lichter:
Yeah. And, it's like, oh, yeah. Amazing. Perfect. Because my company's website is looking so ugly.
Alexander Lichter:
She wasn't wrong. I mean, it was, like, optimized for IE five or something. And that was, like, 2015. So really ten ten years ago, I was like, oh, yeah. And, it's like a thousand euros enough.
Alexander Lichter:
I was like, that's that's I mean, it's I don't know. 18 years old, like, a thousand euros. It's a shitload of money.
Michael Thiessen:
I was
Alexander Lichter:
like, yeah. Crazy. Insane. I mean, it, like, also is substantial amount of money. But, of course, for website well, anyway, I was like, oh, yeah.
Alexander Lichter:
Okay. Let's let's let's see. And I was like, oh, do you have a company because of, like, invoicing in Germany? And I was like, yeah. No.
Alexander Lichter:
Because, well, I don't. And, and then she was like, oh, yeah. No worries. My husband is a tax advisor. He can help you setting that up.
Alexander Lichter:
So, that was a crazy coincidence. And, like, I'm still, of course, was touch in touch with the family. They're amazing people. And, yeah. Then I started basically that company together with, two friends.
Alexander Lichter:
One of my friends back then who I knew from school went went to school, same same grade and everything. We did eight levels together. And another friend I knew through my best friend, back, like, I know from primary school and then a friend there who was also, like, into web development and, did some, websites before. So the three of us, started that company. So, basically, two of us, me the the guy I knew from my best friend, basically, we knew a lot about, web, and the third person was a lot into, like, macOS, iOS applications so we could, like, cover a few things.
Michael Thiessen:
Okay.
Alexander Lichter:
And that's how it started. And we did that website. We did a few more. But at some point, I don't know.
Alexander Lichter:
I'm I I've said it a few times already, be it in, like, videos or in socials or I think also here. I'm not a good designer. So I I could see, like, oh, it's not ideal, but I wasn't never really good at that. And, also, one of our friends after, like, a year or so left, the company was like, okay. It's too much stress, responsibility, and so on and so on.
Alexander Lichter:
So, like, understandable, especially when we started studying. That was, like, around the time after A levels studying computer science. Also, the three of us, same city. It's like, okay. Look.
Alexander Lichter:
This is a bit too much. And I also understand that if, like, I don't know, a customer says, hey. We have an urgent request and you're on vacation. Like, that's tricky. Or especially if you're not reachable because, well, you're doing some vacation without, like, I don't know, with phone with no reception or whatsoever.
Alexander Lichter:
Yeah. That's, that's a bit difficult.
Michael Thiessen:
Yeah. And dealing with all that stuff, like, it's a lot of responsibility when you're younger. And it's also also if you're trying to study at university and you're already, like, maybe maybe struggling to keep up with university and be disciplined there, then it's like, it's a lot of stuff to juggle. Like, I definitely found that I had to cut back on some of my other stuff when I went to university.
Alexander Lichter:
Yeah. I agree. Like, juggling it all isn't easy. But on the other hand, I think it is an amazing time to do that because realistically and I've like, the three of us were in a fortunate position that, like, you can allow mistakes there. You can allow it to, like, I don't know, mess it up with with a client because you don't know better.
Alexander Lichter:
And then you then you know, like, it's
Michael Thiessen:
Right.
Alexander Lichter:
It it doesn't let's say, it isn't as costly as, like, now if I would lose a client because, I don't know, I messed something up, like, greatly. This is, like, big not only legal consequences, of course, also money wise reputation.
Michael Thiessen:
Right.
Alexander Lichter:
So, of course, it always hurts if if you do something wrong. But back then, you have more of that. I can I can try things out while now the responsibilities is even bigger?
Michael Thiessen:
Maybe, like, yeah. It's a little bit of a side question. But in in Germany there, do you have to pay for for university, or is that, like, included? Or, like, how does that that work? So Because if you were I mean, for some people, if you have to pay if you have to work to pay to go through university, then that's, like, yeah, another
Alexander Lichter:
That's another thing. Thing. Yeah. Yeah. So you don't have to pay tuition fees like the classic wise.
Alexander Lichter:
You have, like, a semester fee, which is negligible, in terms of, like, it's 200 something euros, and you this is included with public transport ticket for the city you're in. That also varies per city. But, like, if you don't go to, like, a private university and it's your first, time studying, then that's that's the fee roughly you have to pay every half a year. But, of course, if you say, okay, you also need to live somewhere and need some food and stuff, so what was quite common was then people basically said, okay. They do working student jobs also in especially in in programming or, like, studying computer science.
Alexander Lichter:
A lot of people say, hey. We pay you money. You can learn programming, do some stuff for us. So, also bigger companies basically getting some, let's say, fresh blood, some people who might stay there. So that was a a common way.
Alexander Lichter:
But, yeah, for us, it was basically exactly this, but we have our own company, which also means, and that's still one of the the biggest benefits, I think. If you really put into, like, energy and effort and passion and things work out, then you also reap the rewards straight away. And it's not like, oh, it doesn't really it's wrong to say it doesn't matter. But if I give 50% or 90% or, like, the impact in terms of your salary, you might get a bonus at the end of the year, but it doesn't doesn't show as if, like, okay. I push through that faster, and it's a project, so I have a fixed price.
Alexander Lichter:
If I do it faster, I have a better, well, outcome in the end or more free time or whatsoever. So Yeah. That was always very motivating and still is.
Michael Thiessen:
And you probably have, like there are pros and cons. Like, you learn in some ways, I'm sure you learn a lot more because you're doing everything yourself and you feel the pain of things. But then you also don't have, like, mentors to tell you about stuff unless you're getting mentored or indirectly through open source because you can, like, read the code and people are reviewing your code and stuff like that. But yeah. Yeah.
Michael Thiessen:
Definitely a good option. And like you had said before, there's less risk in a way when you're younger and you don't have a lot to lose, and you can basically just say, what did you expect? I'm, like, basically just a kid still. You know? And
Alexander Lichter:
Yeah. Also, like, no no family. Like, you you have a still lifestyle that's that's manageable money wise. So it's, like, responsibility, it's okay. You can you can I don't know?
Alexander Lichter:
You can do, like, all nighters more often. I don't know. If if I do a few more all nighters, I already feel old. Or it's also like, hey. I have to get up in the morning.
Alexander Lichter:
I can't sleep until, I don't know, eleven and then go to uni. That doesn't work.
Michael Thiessen:
Yeah.
Alexander Lichter:
But in terms of
Michael Thiessen:
Exactly.
Alexander Lichter:
In terms of mentoring, I I really like what you said, and I I actually also mentioned that a few times.
Alexander Lichter:
Like, I never had formally a mentor or someone who was like, okay. This is someone, I don't know, a senior engineer company I I looked, like, after. I was like, okay. That guy, I I can see a lot. It was all open source and people from open source.
Alexander Lichter:
And the internships I I did, I was especially in the the one in in Dublin, I was, like, the only web developer there. It was mainly, I mean, this is a fun part, machine learning and an AI company, which is now part of AMD. So but also, like, people went there from NVIDIA and so on so on, and, like, very, like, research focused, really smart people. But, of course, web development far away, but they were looking for someone saying, hey. We need someone to do some web development there.
Alexander Lichter:
So I did.
Michael Thiessen:
So you were in university. Yeah. You studied computer science.
Alexander Lichter:
Correct.
Michael Thiessen:
What kind of courses or things that you learned that stood out to you that that you remember? I mean, because there's a lot of stuff that that you might have forgotten in this in the the time since. But what things stood out to you? And and maybe a third part to this question. This is a long question now.
Michael Thiessen:
That's fine. Is there stuff that you've taken that applies to web development? Because I think that's the one thing that people kind of say, well, I did computer science, but, like, why does it help me when I'm writing CSS? You know?
Alexander Lichter:
Yeah. I I I think that's very fair. I also think it's the beauty of our job or even our industry that you can that you do not need a degree at all. Like, okay. The two of us have a degree.
Alexander Lichter:
Still waiting for it, formally, but I did everything I need. I actually sent an email before the podcast. I'm like, hey. I have anyway, bureaucracy is in Germany. But I I did it, and and you did it as well.
Alexander Lichter:
We but we don't need it. Like, we can easily say, okay. We can learn that on our own free time. I mean, I knew how to program before I went to university. And, also, there there were programming courses organized by by other students, and you that they got a little credit for that, which was nice.
Alexander Lichter:
But, also, in in the lectures, everybody's saying, look. And, also, in the courses, like, we can't teach you programming. We can tell you theoretical things. We can give you exercises, but you have to do it. You have to experience it.
Alexander Lichter:
And I agree. Like, go out there and do projects. Try, fail, ideally have someone or, like, a community to help with and, like, progress with that. It's it's always I think it's always like that. It's you okay.
Alexander Lichter:
You try things. It might not work out as well. You try other things. It might work better, and you get used to language, a framework, a problem as well. So I think this is a big takeaway, especially in the beginning.
Alexander Lichter:
I know we learned we learned c. We learned, Haskell as well. We had to do Java, but that was well, given that I had a little bit of knowledge before, not that hard. But for example, Haskell was, like, functional programming and a total different mindset that really blew me away of, like, okay. I know programming, I thought.
Alexander Lichter:
And then you have Haskell, like, woah. What's going on there? But I really like the concept of, like, it's so different, but it's also very elegant, and it can solve so many problems. And, also, like, I was never a big fan of OOP itself, especially on the back end of PHP. It was fine, but I never like, I often didn't understand why we need that much boilerplate for everything in JavaScript with just objects and functions was way nicer there, especially if you say, hey.
Alexander Lichter:
I have a function and then calls a function and, like, you have a bit of composables, let's say, a composable function. That was great. But, yeah, like, in general, this the course, I took was, compared to what you did. I think it was, I think, also a mixture of both. We had some practical parts.
Alexander Lichter:
We even had a course called software as a business that it was not, a required one, but we can choose that, where basically and that was really fun. You got, like, teams of five or six people, and the idea was basically to found your own startup, like, hypothetically in in that semester. So you start with okay. Is there any idea? There were some people pitching in ideas, like, that's wanted to, like, work on a on a version with some some students.
Alexander Lichter:
So sometimes, like, acquaintances of the of the professor or, like, people from other companies. There were people, like, from from a start up incubator, in in the city where I studied that came and we'd like, okay. How to do, like, a market research, how to do a SWOT analysis, like, all the things around that, which I think helped also a lot in terms of, okay, what are their tools? Like, okay, personas, understanding, like, the possible target group more and so on so on. It was a lot of fun.
Alexander Lichter:
We built a smart dumbbell in the end. I can't remember what her name was. Something I think it was something smart. But, yeah, I I might also we even built a a site. I I built back then already with Nuxt and put it on Netlify.
Alexander Lichter:
And, we we had a sensor, that was a big thing back then, like IoT. It's like, okay. We have a dumbbell. We can count how many reps to do so we don't have to put it in and all that. And then, like, yeah, we we thought about something.
Alexander Lichter:
And the end reader had it presented, there were people, like, a bit like, Dragon's Den or, like, Shark Tank, I think it's called, where where, like, okay. People are there, judging your presentation skills and, like, also learn how to give a good, like, a pitch. And that was that was really nice and have those a lot of from an entrepreneur, like, point of view. Yeah. So that was pretty good.
Alexander Lichter:
But, of course, we also had, like, we had, like, calculus, we had algebra. Like, the whole math part in the first three semesters was really there to separate the people who are well, okay. I studied computer science because I don't know and like computer games. Doesn't work, which doesn't mean everybody who's liking computer games is not made for computer science. But yeah.
Alexander Lichter:
So so that was interesting. Even though I don't have to use it every day in, like, oh, groups and Galois field and whatnot, like or, like, what a monoid is or, like, half group or ring. You don't use it day by day, but I think the sometimes the understanding that's, like, subconsciously still there, like, how to solve certain problems and look into it. Same with, like, algorithm and data structure of, like, okay. I never had a job in the field.
Alexander Lichter:
People said, can you revert a binary tree or, like, I don't know, build a double linked list or whatnot, whatsoever. But the approaches there, also, like, big o notation, super useful to understand performance parts, arrays versus objects, and all that. So there are a few things that I could take away. Would I need the whole study for that? Probably not necessarily.
Alexander Lichter:
We even had, like, Internet and web applications as a a topic of choice. It was a bit more old fashioned. Like, we learned still XML. It was interesting and, like, how to validate XML and all that, but, yeah, no, like, framework itself. But there were luckily projects, also a university that, like, used frameworks like Angular, not Angular JS, very important Angular.
Alexander Lichter:
And, also, when they knew, like, hey. You're on the Nuxt team. I was like, yeah. We can do stuff with Nuxt. Then they did stuff with Nuxt.
Alexander Lichter:
Like, yeah. It's, also at that chair, my my final thesis where I compared Next, Angular, Nuxt in terms of SSR performance and, hope to publish a few things of that this year. So, yeah, this is, like, worth studying if you say I just wanna do web development. It depends. Like, I think it was still amazing time, especially that I had the time to just try things out and that freedom and also the free time was really worth it, but you don't necessarily need it.
Alexander Lichter:
That's fair to be said.
Michael Thiessen:
Your point about, like, the concepts that like, big o notation and, like, some of these other things where you don't necessarily use it. You're not, like, you know, calculating specifically these things or writing data structures and things, but kind of having those concepts, like, in your head somewhere, whether or not you realize that you're using it probably helps you in some some ways where you're thinking through a problem. Oh, I can approach it this way versus this way. I wonder if that is maybe, like, a a more useful part. Like, I've heard of this concept called overlearning Mhmm.
Michael Thiessen:
Where basically, like, if you wanna get really good at algebra, you can learn calculus. And calculus uses algebra, But then the goal is not necessarily to be good at calculus, but, like, by learning the thing, like, beyond it, then you have to, like, really you get really good at, like, that foundational stuff. And so I wonder if that's kind of, like, a similar thing where okay. So maybe the point is not as much that you're gonna be able to write your own doubly linked list, but by having written one and then having written, you know, all sorts of, like, different cues and all sorts of other stuff like that, you kind of have, like, these ideas just, like, internalized much more deeply than if you had just, like, read a Wikipedia article on big o notation and thought, oh, yeah. That's cool.
Michael Thiessen:
I kinda get it. And then, you know, moved on.
Alexander Lichter:
That's that's for sure true. I I think especially at things that really build up on each other, that makes a lot of sense. I think if you would apply it, for example, to Vue and say, hey. I wanna get good at Vue. I wanna see how people, like, build Vue, basically, and look into that.
Alexander Lichter:
It might not be as helpful. Might you may be in a separate activity amazingly then, but it doesn't make you better at building websites. But I think also this is, like, the comparison not the knowledge is not correct. But in general, I also agree, like, learning c, for example, dealing with pointers or, like, that there is no string type is all, chars. Yeah.
Alexander Lichter:
Cool. This was, like, an amazing experience to see what is actually going on under the hood, how to, like, deal with memory manually. Do I want to do it every day? Certainly not. But it was a great experience.
Alexander Lichter:
And same with we had, even, like, our arc like, how was it called? Computer architecture, more or less, with, like you can even choose to, like, do, like, compiler stuff and build your own compiler and lexer and parser and whatnot. But even, like, the the base level, which we all had to take besides the whole, like, electric part with, like, oh, yeah, circuits and and whatnot and and flipboards, the computer architecture with, okay, Boolean logic, De Morgan's laws, still using that, every now and then, which is Mhmm. Quite helpful.
Michael Thiessen:
I remember that one.
Alexander Lichter:
So there's there are a lot of things that kinda stuck with you and that really help to understand, even though you're stuck. I I will never need this knowledge as a web developer directly. But, yeah, the foundations are are still helpful.
Michael Thiessen:
Yeah. And I also wanna state again that, like, there's often this debate about, like, do you need a CS degree or not? And I knew people in my CS program who like, at the end the final year, we, like, do the big programming project, and there were people who could not program who have CS degree. And, also, I've worked with people who did not have a CS degree, and they were exceptional programmers. Yeah.
Michael Thiessen:
And so it's just a different set of knowledge. It's like a different way of getting to the same place. So if you're if you're listening thinking, oh, man, I feel like I need to go back to university. Don't worry about it.
Alexander Lichter:
I mean, except you wanna
Michael Thiessen:
You still can if you want to.
Alexander Lichter:
If you wanna do, like, a PhD and, like, wanna become a professor, that's also fine. Like, I think also especially academics, it would be great to have some more, like, new knowledge there. But it was funny. I was talking with one of my supervisors, none of my of my final thesis of another project I had, and it's like, yeah. And, I was like, okay.
Alexander Lichter:
On companies that it's like, yeah. You know, that's a problem in academics. Like, people, especially, like, really skilled people, they just go into the, like, private economics and they they become JavaScript developers because, well, the the pay is nice. Like, you don't have to, like, deal with a lot of bureaucracy as well. So and that that was also an interesting perspective on that.
Alexander Lichter:
But also from another side, especially in Germany, if you apply to more traditional companies, they are happy to see that you have some kind of degree, in there. But, realistically, the people where you wanna work for, they'd rather see your references than your degree. It might give you a nice salary bump if you have a degree, but your references are are key, and my classes had before. I also know people who finished the CS degree, like, at least a bachelor or, like, a master, and they still couldn't really program. So that's a bit tricky then if you actually wanna work, like, as a as a programmer.
Alexander Lichter:
While I know a lot of people, they stopped at bachelor, they didn't have the best best grades, and me neither, and at least in, like, the bachelor phase, so to say. But they were really good at at what they're doing. So, and had reference. They built some things on the side and especially people that were actually programming on the side during university, no matter if it was, like, a a working student or, like, in their own side projects. They landed a really, really nice jobs.
Michael Thiessen:
Yeah. You've mentioned before your professors were saying you can't they can't teach you how to code because it's all, like, theoretical stuff, and they give you projects. And then, you know, I had one project where I was gonna write a compiler. I think it's something like that. It didn't work in the end, and so I got, like, I don't know, part marks for it.
Michael Thiessen:
I Didn't do the best. But, like, I learned, I guess, through trial and error, and so you kind of have to take that on yourself. And if you do that through university or you just decide during your day job to, like, learn programming on the side, it's kind of the same thing. Working, like, on projects directly maybe is a more direct route because you actually gain experience in actually writing stuff, and you can build projects and see what works, what doesn't. Whereas with, university, you're often building, all sorts of random things.
Michael Thiessen:
And, yeah. So
Alexander Lichter:
I think if if you do that project building on the side of university as had I been through, like, a side job or your own company or even just, like, a a fun project, like, some student organization, you also had a very good student organization to to have to mention that. Like, that was our student assembly was really good. That helped also a lot of people, and, that yeah. I think that's really key. Plus, find friends, find find like minded people because I like, still, some of my best friends nowadays I met through through university.
Alexander Lichter:
And, yeah, I'm I'm happy that, even though I live in the Netherlands now, we still stay in touch and everything, see each other regularly. So, yeah, make friends. Don't be lonely, especially after COVID. It's, yeah, be worth it.
Michael Thiessen:
So moving on from university to now, what
Alexander Lichter:
Yeah. Right.
Michael Thiessen:
What so that's the last piece that we have. So
Alexander Lichter:
There's something missing in between.
Michael Thiessen:
So there's university, and then you ended up eventually like, now you're doing consulting where you're not building websites for people Yeah. But you're more lending your expertise. So can you fill in that that time gap for us?
Alexander Lichter:
Yeah. So as I as I said, I looked into Laravel where I think kinda, like, actually, like, mindfully or, like, openly got in touch with open source, even did some contributions to to the Laravel docs, and I think even wanted framework, but it doesn't matter too much. Like, some smaller things, nothing too big. I started maintaining an old like, one single package. And I knew PHP.
Alexander Lichter:
I had to build a more complex application. It was an association manager, which I eventually rebuilt in Nuxt with Nuxt Hub in a video series nowadays. So I was yeah. 2015 was like, okay.
Alexander Lichter:
Great. Like, 02/2016, something like that, where I built it. It was, like, Bootstrap, of course, back then and Laravel only. A bit of Jake Ferry. It worked.
Alexander Lichter:
It was horrible in in terms of I I I we can't do anything with the code name, of course. So it's like, okay. Let's let's rebuild. But back then, I was like, okay. Laravel, super powerful PHP framework.
Alexander Lichter:
Great. Has, like, often included a lot of things. And then I was like, yeah. But I heard JavaScript, like, jQuery is not a thing. I also built a website for a game where, basically, let's say, it was for, like, a hero shooter, and you have different matchups, like, say, different, let's say, heroes you can pick.
Alexander Lichter:
And the idea was to have a website and say, hey. Hero a is good against b, but weak against the other one. And people could, like, vote. So, like, crowdsource information, even write, like, tips and comments and vote on these. I built that, and that somehow blew up because, like, a bigger YouTuber, like, 50 k subs or so, was, like, sharing that.
Alexander Lichter:
I built it with Laravel and also Jake Verry. It was a lot of fun. Website is still online, not really maintained anymore. Game is also kinda dying, sadly. And it was a lot of fun to build.
Alexander Lichter:
It was a nice side project, put some ads on, so it was also, like, not substantial revenue, but still. And I learned a lot through that as well. The best part is when the YouTuber was posting page, after, I don't know, an hour, and it was 4AM in the morning because he got like, he was American. I woke woke up at six, and the site was crashing everywhere because someone did something I didn't consider. Someone's like, hey.
Alexander Lichter:
Champion a is good or bad against itself. And that didn't work in my my table schema and everything. So So that broke. I fixed it. It was all good.
Alexander Lichter:
It's still, like, got enough traffic. But I was like, oh my god. Once again, people come up with fun ideas you never expect, so it's always good to, well, have error tracking on there, which I luckily had them as well. But I did a lot of, like, fun fun side projects. Especially there, I was like, hey.
Alexander Lichter:
There's so much you can do and modal since and that. I need to look more into JavaScript. JQuery is, like, it's it helped when it was necessary. But, yeah, this was, like, after, like, 02/1637, something like that. I think, like, sixteen ish.
Alexander Lichter:
And, then I took a look. And, of course, as also mentioned before countless times, Taylor Oddwell was a big fan and still is a big fan of Vue. Js, tweeted about that. The Laravel universe is very much into Vue. Js, so I was like, let's take a look at this Vue thingy.
Alexander Lichter:
I took a look. I bought another project, which was a very simple landing page for an older customer. It's like, okay. Yeah. Sure.
Alexander Lichter:
Built that in Vue only. It was great. It was lovely. Great experience. A lot of fun.
Alexander Lichter:
Not really complicated. But wait. Yeah. You need this thing called SEO. Plain Vue and SEO is tricky.
Alexander Lichter:
So I found this project called Nuxt, and, well, that's kind of where I started using it. So that part recovered. Now from doing that, going, like, to my internship, so I didn't have, like, a lot of clients that's like, hey. Look. I'm I'm out for half a year.
Alexander Lichter:
If you need anything urgent, we can maybe figure something out, but full time job, internship. That's it. It was also mandatory. That's why I did it because going abroad was fun from part of my course. So they said, like, it's mandatory working or abroad semester or both.
Alexander Lichter:
So I felt like it's a great chance. Yeah. I'm gonna go to Ireland. Been there before, like, tenth grade or so. It was really nice.
Alexander Lichter:
I was like, let's let's go back there. And luckily, through someone I know from university, it's like, oh, yeah. I have a connection there. Maybe they they said they na web developer so hit them up and send them CV and so on. And, yeah, then I was I was in touch there.
Alexander Lichter:
And very often, I was still on the Nux Discord. I was, like, doing my stuff. In the evenings, I was, like like, helping people, and then someone, of course, was writing me, hey. Yeah. The the same with the Minecraft thing.
Alexander Lichter:
Like, hey. Can you, I don't know, look into my projects? Like, no. I don't look into big projects in my free time. I don't have time for that.
Alexander Lichter:
Oh, yeah. We needed a solution. We can pay you. I was like, oh, wait. And that was, like, one guy, Steven, I think, from Ireland.
Alexander Lichter:
We're, like, chatting a little bit. He's like, yeah. Like, I I really want to, like, donate for, for, like, your work in the community. I was like, okay. Okay.
Alexander Lichter:
I don't have an donation page. Like, yeah. You just make, like, a a he grabbed me a coffee.com. It's like, no. No.
Alexander Lichter:
I build it myself. With Stripe, I open sourced that as well and everything. And, yeah. That was like, okay. Consulting, just that.
Alexander Lichter:
And it's like, okay. More and more people asking for that. And it's not only about donations. Maybe this is a viable, well, way of doing that. So I started, and I wrote about it, put it in my blog posts, which I also wrote around 2018, wrote quite some blog posts.
Alexander Lichter:
And, I got into a consultancy, and a lot of people hit me up even, like, bigger companies, like, European, also, like, world known companies from, like, I don't know, fashion retailers, over to a lot of, actually, ecommerce, obviously, but but also beyond that. And it is pretty amazing that, like, these people, like, hey. We want to have you an expert on that team. We're building a web shop, this, that. So, yeah, that's how I basically pivoted a bit around.
Alexander Lichter:
Also, so we're only the two of us at the company. Right? And, my other friend was left over and did did, iOS and macOS, found a very nice project in the meantime where he's like, hey. The company is amazing. I might wanna stay there because he likes the project a lot and still is by, by today.
Alexander Lichter:
Still works at a company. So that was also, let's say, not dissolving, but it was like, the focus was more clear. Before, it was a bit like, yeah. Let's see whatever comes. We'll might look into that or not.
Alexander Lichter:
Either combine workforces or do like separate projects. And, yeah, then it was only me in, focusing on consultancy, and that's, that worked pretty well.
Michael Thiessen:
Nice. So, yeah, now we've covered, I think, from the very beginning to the to the current time. And, yeah, it's great. It was great to hear all the different things and all the stuff you did.
Alexander Lichter:
100% It's always like a nice blast from the past. And I mean, we we we didn't cover quite some side projects, which is also not important. I think one more thing that, like, the whole content creation, we're like, that's
Michael Thiessen:
Oh, yeah.
Alexander Lichter:
That probably, like, people people might know that started, like, in 2023 in, like, late September. I wanted to do it for way longer, but I I always wanted to say, okay. If I do, like, content as in videos because I did blog posts before and then I don't know. Still have to do my 2024 recap. It's still in progress, but I wanna release it as a month, and I will.
Alexander Lichter:
It's it's long, though. Yeah. I don't know. I wanna do it consistently. So I need to have a setup, like, something like that.
Alexander Lichter:
I wanna do it consistently so I can, like, really focus, my time on that. And at some point, I was like, okay. I moved to Amsterdam. Well, before that, it was, like, also a bit of hassle here and there and, this and that. And eventually, I was like, hey.
Alexander Lichter:
Let's let's do it. Let's redo my website. It was more than due. It was, like, looking sold, obviously. I I couldn't even use it anymore because the server where my Laravel application was, where basically all the blog posts were were and prerendered eventually, I somehow, well, canceled that and, the data, well, was gone.
Michael Thiessen:
Oh no.
Alexander Lichter:
So the blog posts were all there on the side, so I, like, copied them and everything, but, I couldn't change anything anymore. Happens. And also, like, don't need Laravel back end for that. You can just straight away do it with something like Nuxt content, how it's now. So, yeah, it was like, let's let's change this.
Alexander Lichter:
Let's do this. And YouTube, streaming, blog posts. Well, YouTube kinda kinda got stuck. Well, it kinda stuck with me. Blog posts, right now, I feel always like writing a blog post.
Alexander Lichter:
I could rather do a video about it if it's, like, worth the topic because that's, that fits more. And, well, stream if if I can. Like, videos you can pre produce, like, the podcast as well. It's not live. With streams, it's always tricky because you have to do it live, and I also want to consistently try a bit more this year.
Alexander Lichter:
But yeah. And I in a way, I remember when I started, I was looking for a lot of content. And, especially in Nuxt, it wasn't rather thin, but I basically want to deliver the content that I wish that I would have to have had, like, at the start. I wanna have that kind of content for people starting new into ecosystem, and then also going beyond beginner content, like, more intermediate and advanced stuff because, that's what a lot of people looking for. The problem, of course, is the typical, like, pyramid, you have a lot of beginners.
Alexander Lichter:
You have not many intermediate, advanced people. So less people watching, also harder to monetize and so on and so on, but that's fine. I basically do that also for the community.
Michael Thiessen:
Yeah. I found that as well. It's like this trade off where there's lots and lots of stuff already out there for beginners, but there's this poll that most of the people out there are beginners. And so it's hard to to not get sucked into just, like, just kidding towards that. But then if you do that, then, you know, I remember as myself, like, trying to learn stuff beyond this, like, beginner stuff.
Michael Thiessen:
There's there's not a lot out there, and so then that's what I've been trying to do is try and do a bit more advanced stuff, but then, of course, there are a few people who are willing to take that. So it's harder to justify spending that time and making courses for that and all that kind of stuff. So, yeah, it's a tricky thing.
Alexander Lichter:
With courses, it might be a bit different story. Where if you say like, hey. I have advanced knowledge. I charge a premium for that, and then people can get that. The problem is, like, of course, I I'm also planning to, like, actively making a course on Nitro, but it was already revealed in a 2025 stream with with Daniel.
Alexander Lichter:
So jump back to that if you if you missed that. I I really wanna make sure that I still share a lot of knowledge that's just available to everyone. I don't wanna, like, gatekeep or, like, have a paywall up for that. It's more like as I said before in a bit, if you wanna have, like, information, you can get them all to the data for the for the source code and GitHub, whatever. But if you wanna have, like, hands on examples and so on so on, all, like, with nice structure outline, then that's the way to go, especially in a very niche topic because then you have, like, a very, like, high expertise and people in there are happy are happy to pay.
Alexander Lichter:
But on the other hand, I think especially for, like, intermediate content, it's still a good level of, like, hey. We can talk about that. We can, make videos or blog posts about that, and they're still, like, looked for and clicked. And with that, I'm also really happy how how it is going. I'm also looking forward to do some more, like, TypeScript or JavaScript or, like, more general stuff.
Alexander Lichter:
Because right now, it's more like Vue & Nuxt, and I will stay in the Vue & Nuxt bubble or ecosystem, of course. But it's nice, like, looking outside of that, like, having a few touches here and there is something that's still relevant for people. That's also a challenge.
Michael Thiessen:
Yeah. I'm trying to to branch out a little bit more as well. I'm choosing a different route, though. I'm going more in the the AI route. Yeah.
Michael Thiessen:
A lot of stuff that I'm I'm, like, trying to learn, oh, how do I use AI? And a lot of stuff is, like, in Python. Or if it isn't TypeScript, it's, like, with React or Next. And so, yeah, there's there are differences a little a little bit in in terms of using it with with Vue and Nex-- and Nuxt. I mean, like you said, it's creating the stuff that I wish that I could have watched
Alexander Lichter:
Exactly.
Michael Thiessen:
Six months ago because that's how fast things are moving.
Alexander Lichter:
Yeah. So just, like, a couple weeks. It's crazy.
Michael Thiessen:
Couple weeks ago. Yeah. So But I I
Alexander Lichter:
think it's also really nice, and then it will help a lot. Like, I'm always I'm always telling people, like, hey. I know I've seen a Discord recently. Someone was like, oh, I created my own wrap around the hydration error messages that you give, so I have actual error tracking. And I was like, that's great.
Alexander Lichter:
Do you have a blog post in it? Otherwise, can you write one? Because there is, like, so much knowledge in the people's head also for companies. Like, okay. This is no business secret necessary.
Alexander Lichter:
Put it up there. And nobody, expects you to write a whole module or library. It's just like, hey. This is how we did it. Here's a code snippet.
Alexander Lichter:
You can do the same. You can do differently, but at least here's one way of solving particular problem. And I really think this is so valuable. Like, once again, people should, like, write more about it, talk more about it at meetups or whatnot. Yeah.
Alexander Lichter:
It it would be great to see that.
Michael Thiessen:
Yeah. I agree. More content. The more content, the better.
Alexander Lichter:
Absolutely.
Michael Thiessen:
So last week, you did this, rapid fire thing. It
Alexander Lichter:
Oh, hoo. Yeah.
Michael Thiessen:
So
Michael Thiessen:
I've got a couple questions for you.
Alexander Lichter:
That's cool.
Michael Thiessen:
Some harder than others, but we'll we'll I'll try and be easy on you.
Michael Thiessen:
So how did you end up in Amsterdam?
Alexander Lichter:
Because of my girlfriend. I can work from everywhere. She had a permanent contract here, and, yeah, I'm here.
Michael Thiessen:
Good enough reason. That's also why I'm where I am.
Alexander Lichter:
So True. True.
Michael Thiessen:
I can really okay. So if you weren't able to program, what would you do for a living?
Alexander Lichter:
Ah, that's difficult. My mom always said, like, yeah. It might be like a media lawyer, maybe like a a politician, but for the for the good ones, not for the bad ones.
Michael Thiessen:
Oh, okay.
Alexander Lichter:
So yeah. You could even even a talk with with my girlfriend about it recently. Like, could you imagine, like, an actor, but I never felt like I wanted to be an actor. But, yeah, it could be fun. Or, like, some, I don't know, late night host or something.
Alexander Lichter:
So what we do But without programming, something like that.
Michael Thiessen:
Host a different podcast.
Alexander Lichter:
Yeah. Like, teaching stuff a different I don't know. Something like that, I I think, yeah, could be fun. It's something I wanna be passionate about.
Michael Thiessen:
Yeah. For sure. So you used to be very much into Minecraft. Do you still play Minecraft today? And or are there other video games that you're, like, really into?
Alexander Lichter:
Yeah. I don't play Minecraft anymore. Unfortunately unfortunately, that's what to say. I yeah. But I still am a big gamer.
Alexander Lichter:
I still play a lot of video games, different ones. I play Perfect Heist 2, which is like a little player versus player, like, heist simulator. It's a lot of fun with with friends regularly. Like, we play every Monday, like, evening, but, like, yeah, other other games as well. I try to stay up to date there.
Alexander Lichter:
It's a fun world.
Michael Thiessen:
I have not heard of those ones, but, also, I don't really pay attention to video games. So, who
Alexander Lichter:
My Steam my Steam library is too long I I don't know. Like, I I play Hogwarts Legacy, for example, also finished the game recently fully. It was a lot of fun.
Alexander Lichter:
We played GTA for a while. I mean, these are more more well known. Yeah.
Michael Thiessen:
So this is one that that I think is kinda interesting. I'll give you a little bit more time to think about it as well. So if you had to give a talk, like, right now, impromptu twenty minute presentation on any subject and but it can't be programming related.
Alexander Lichter:
Damn it.
Michael Thiessen:
So is there, like, some sort of thing that you're, like, passionate about? I feel like most people have, like, at least a couple areas where they, like, know a weirdly a lot of information, and they could just you could give, like, a fifteen minute monologue of of interesting interesting tidbits.
Alexander Lichter:
Yeah. I think, like, gaming would be definitely one of them. Probably, like, not super in that, but I also like to play chess. I didn't play for a while though, but I am trying to get back into that. Otherwise, German politics.
Alexander Lichter:
Okay. That's also something and when I was still living there, I was, super invested. Now I'm, well, still still invested, so this is probably also something to talk about. Maybe it's, like, European politics, some sometimes even world to to some degree. Yeah.
Alexander Lichter:
Could I could talk about it for hours or, like, debates. Yeah.
Michael Thiessen:
Yeah. Okay. I did not know that.
Michael Thiessen:
That's that's up for the next DejaVue podcast.
Alexander Lichter:
Yeah.
Michael Thiessen:
German politics.
Alexander Lichter:
Yeah. Other than that, actually, there's one more thing in the last anecdote, but not that much anymore. German rap and hip hop, I was really, really into that. Now not that much. Like, don't listen to that much anymore.
Alexander Lichter:
But I remember when I was in at VueConf US in Texas in 2020, so right before COVID hit, I was sitting with Evan, and we talked about, like, Chinese rap and German rap. I actually did some some German rap in the past. So I was, like, showing some deeply burdened ninja, just some examples. Yeah. Over crazy times.
Michael Thiessen:
Yeah. And, Evan Evan doing some, karaoke is, I don't know if he's done that recently, but, that used to be a thing at least.
Alexander Lichter:
He's still he's still rocking it for sure. Yeah.
Michael Thiessen:
Some Vue lore.
Alexander Lichter:
In Japan I I have I have some videos where, like, sang together in Japan. It was a a lot of fun. And hope to to do that very soon again at Vue.js Amsterdam, which is coming up in March, by the way. Mhmm. Little segue.
Alexander Lichter:
10% discount CODE in the show notes. Yep.
Michael Thiessen:
Yeah. Well, a good segue to to wrap things up. I don't know. Can you consider it a segue if we're wrapping things up? I don't know.
Alexander Lichter:
I think that's quite fine.
Michael Thiessen:
It was great to, yeah, to to chat with you, learn more about you. And, of course, there are plenty of episodes that we've got before this one. You can go check them out.
Alexander Lichter:
Exactly.
Michael Thiessen:
Our predictions for 2025 with review and Nuxt and all of that. And, yeah, many, many more.
Alexander Lichter:
Like, episode of Michael, as we said before, wherever he is on the screen here. Yes. So, definitely, yeah, check them out also with with Daniel, with Evan, with Matt Pocock, with a lot of amazing people out there. The list is long, and we should really get them all on the website so can people actually search and filter for that. That's a resolution for 2025.
Alexander Lichter:
We should pull that. Maybe, like, on stream or something. Let's see.
Michael Thiessen:
That'd be cool.
Alexander Lichter:
Yeah. And if that's not the latest episode, then, you know what to do. Just continue listening to it. Thank you, Michael, for all these amazing questions, and I hope now everybody knows my darkest secrets.
Michael Thiessen:
No. That's the next episode.
Alexander Lichter:
Oh, that's that's real. Alright. The five sins of our Vue developers. See you all. Bye bye.