Daniel (00:05.315) * Singing and going "budabudabuda!" * It's the Dave and Daniel show. Dave, how are you? Dave (00:09.385) Yara Daniel. I'm good. I'm good, thank you. How are you? Daniel (00:13.774) Fantastic. Good morning. I'm good. I'm super exhausted because I've been working my little tushy off ever since returning from the States because there's just so much to do. I can totally tell you more about what I've been doing. Basically, I've been working a lot on landing pages on the website and on the servers. Dave (00:21.6) Mm-hmm. Dave (00:28.598) Yeah. Daniel (00:37.602) But yeah, there's like lots of stories I can tell you about this. But first I want to ask you, can you hear the Synology? You can no longer because I shut it down. I have a, like I told you this in the previous episode, but I have a Synology in my office now for backup purposes. And the thing's fantastic, but it's super loud. So you're gone. No? Huh. Okay. I can't, I can hear you. Where was I just thrown an error? Daniel (01:13.326) Dramatically, wow, mine is completely fine. Daniel (01:24.125) That sounds not very good. That's such a nice intro. Daniel (01:35.523) Oh, hello, ladies and gentlemen, this is now the Daniel show. In this episode of the Daniel only show, we're going to slander Dave. Welcome back. Dave (01:53.442) Thank you, thank you Daniel. Oh man, only like half a second of a technical issue, I come back and you are already moving on to the slander show. Like don't, don't let me stop you mate, keep going. Well you see, Dave never clears his derived data. Daniel (01:58.188) Hahaha Daniel (02:17.225) Dave puts DS store files in GITS. Dave (02:21.283) How did you know? Daniel (02:22.626) Hahaha! Dave (02:24.895) Get out the repo man Daniel (02:29.271) Yeah, are we still recording? I don't know. Like, should we just go on? Should we just make this the start of the show? Let's make this the start of the show. Yeah, whatever. Dave (02:31.699) Yeah, it- Dave (02:35.422) I think we can make this the start of the show, Daniel. Good morning. Good evening for you, rather. Time zones. Daniel (02:40.59) Good morning. It is super late actually, like the time zones are really hitting, but yeah, you gotta do what you gotta do for your art. Dave (02:46.754) Yeah. Dave (02:51.858) It's absolutely for the content, for the audience. Well, I don't feel like we've started the show until you've intro'd the show, Daniel. So I'm gonna. Daniel (02:56.322) Oh yeah, for the content. Daniel (03:04.086) Well, good that that's actually the next part where I say, hey, welcome to Waiting for Review, a show about the majestic indie developer lifestyle. Join your scintillating host, Dave and Daniel, and let's hear about a tiny slice of their thrilling lives. Join us while waiting for review. And because I see the icon with your face on in our shared notes document, and that kind of... Dave (03:32.245) Mm-hmm. Daniel (03:33.182) I was hopping from word to word while I was reading that and I was very much reminded of these karaoke videos. Dave (03:39.442) Yeah, yeah, yeah. Where they've got the bouncy ball. Daniel (03:41.314) It was kind of fun. Daniel (03:45.206) So bounce, bounce. That was kind of nice. Yeah, I feel like I've been asked today, I've been asked today, Daniel, are you comfortable moderating online discussions or like Zoom discussions and stuff like that for the next episode of our Telemetry Deck webinar? And I was, and then without thinking, I was like, yeah, sure, I can totally do that. And I feel pretty comfortable with it. And then I realized, yes, actually, that's what I've been doing every Dave (03:51.715) Mm-hmm. Dave (04:03.417) Mm-hmm. Daniel (04:15.07) Um, every week with us, like I'm not moderating this alone, of course, but I'm doing the intro and the outro and that's basically what we were talking about. And I feel pretty comfortable doing that. So that's actually really nice. Speaking of webinar, um, I have a new webinar to announce. It is Tuesday next week when we record this. So it's going to want to be probably very, um, close, uh, when you listen to this. So. Dave (04:16.887) Mm-hmm. Dave (04:26.19) Nice. Dave (04:30.741) Mmm. Dave (04:41.086) I think so, yeah. Yeah. Daniel (04:45.71) It is about localization. How do you actually localize your app? When is the right time to start doing that? What are the good practices? The best practices even, not even good practices, but the best practices. And also, why should you even localize your app? Is it a spoiler alert? It's an accessibility issue, but it's also a just reach issue. And it might even be a... Just an issue of it's the right thing to do. Dave (05:17.454) Yeah. Daniel (05:19.01) So yeah, it's a free webinar and I've started doing this, right? And basically how these look like is basically a live recording of a podcast. So this is the Daniel and his guest podcast. My guest this time is Jihad Gundus, the creator of Remafox, of Bardicrouch and various other localization tools for, especially for Swift. And I forget the name of the... Dave (05:20.42) nice. Dave (05:39.36) Mm-hmm. Daniel (05:48.574) newest project. It's something kit, localization kit or something like that. Yeah, I'm not going to look it up on the show actually. But yeah, you should totally join. It's free. And you can go, I actually, I tiny URL to the URL, because it's actually hard to say on the podcast otherwise. Go to tinyurl.com slash localize apps, no spaces in between or anything, just localize apps at the end of tinyurl.com. Dave (06:15.866) that's localized spelt with a Z. Daniel (06:18.37) Oh yeah, with a Z. Actually, my computer is set to British English. So it always tries to autocorrect to localize with an S. And that actually is a relic from 10ish years ago when my, like when I was like my accent, my English accent was very British inspired because I had, like then I also had British friends and it just felt nicer. And I mean, like, I mean. As a foreign speaker, you kind of decide your accent for yourself a little bit, right? So I kind of just to train myself to go into more Britishisms. But then it turns out that on stages and during conference talks and stuff like that, people would understand me more easily when I spoke a more Americanized English. And so I kind of trained myself towards this very Americanized, you know, accent where I'm just like, how do you partner? How's it hanging on the veranda for you today? Dave (06:56.923) That's quite funny. Dave (07:07.332) Yes. Dave (07:16.738) Ha ha! Daniel (07:18.43) Yeah, that was horrible. Dave (07:21.764) I feel like there's some special irony that we were talking about your localization webinar and we've actually started talking about localizing the word localize for a second. Daniel (07:32.35) Yeah, but also like I was kind of localizing my voice because it turns out not even just Americans, but just like a lot of people who are either American or like foreign language speakers who have you speak English as a second language will understand me better if I speak American just because they watch movies in American English, they watch TV shows and so on. They're favorite YouTubers. Dave (07:52.662) It's yeah, the sheer, sheer predominance of American output in that sense. Um, the contents, but, uh, Daniel, I've got a bone to pick with you about your webinar, um, it's on at 4 PM CET where I too want to, uh, dial in myself. Daniel (07:59.83) The content. Daniel (08:06.786) Okay. Daniel (08:15.164) That's like two hours before you get up in the morning probably. Dave (08:17.834) Not even that it's 2 a.m. It's like the worst time of the day for me at all So I might catch you up on the recording I definitely thought about could I get up and say hello? But I think I will have to not because that's gonna be far too far too middle of the night Daniel (08:25.463) Yeah. Daniel (08:34.754) bad. Because if you're a life on the thing, then you can actually ask questions. But yeah, it is a good time for Europeans, for many Americans, but it's a horrible time for people on the other side. So I'm sorry about that. Dave (08:44.419) Mm-hmm. Dave (08:48.45) Yeah, that's all right. There'll be a recording, I'm sure, right? You'll... Daniel (08:51.998) Oh yeah, it's going to be on YouTube just like the previous one. And I'm also going to start actually slicing it up the same way. I'm creating these little reels from our show and putting those on TikTok and Instagram reels and YouTube shorts and whatever, I'm going to do the same thing with, with that content because the content needs to be utilized. And yeah, I'm just going to try it, not posting them on the same account because that would be confusing. Dave (09:15.044) Mm-hmm. Dave (09:22.198) Well, I'm looking forward to watching the full recording, to be honest, Daniel. I'm very interested in that side of things. And your guest, I'm incredibly interested in his string localization app, I believe he's got. So I know you couldn't quite remember the name of it, whether it's localized kits or what. But yeah, I've heard something about this already, because he is in our Discord server that we've got. Daniel (09:50.839) Fantastic. Dave (09:52.198) Yeah, which we linked to a couple of shows back. I can definitely link in the show notes again today. We've had a few listeners actually join that Discord server after we posted about it before, or talked about it before a couple of shows back. And yeah, it's been actually really quite cool having people randomly show up in the Discord server who listen to the show. So thank you to everybody who's come and said hello so far. Daniel (10:04.5) Mm-hmm. Daniel (10:15.95) Totally. Dave (10:22.638) But Daniel, I am curious about something. I can't remember if we mentioned on the show or not, but I am aware that you are looking at moving around cloud providers for telemetry deck at the moment. And as a non-cloud cluster server developer person, Daniel (10:25.57) Hmm. Okay. Daniel (10:42.295) Right. Daniel (10:52.418) Hahaha Dave (10:52.574) I don't know how best to put that. It all sounds super scary to me. But okay, okay. Right. I was hoping you might allay my fears and tell me when you do it, it's that easy. But dude, can you talk me through it a little bit? Like what's going on over there? Daniel (10:58.67) Oh, it is super scary. It's super scary to me as well. Daniel (11:11.438) Okay, so to allay your fears at first, like the scary part is not that I might like destroy everything because especially with the cloud providers, you put everything in these, they're called differently for example in Azure, they're called resource groups or whatever, but everything is kind of in its little box. And so what you usually do is you try something out, you just create a new little box and then do everything in there. And then that happens there and the original deployments and stuff, they get this, they stay untouched. Dave (11:26.635) Mm-hmm. Daniel (11:39.938) But what is scary is just the sheer amount of money that you pay for cloud providers, right? And so if you make a mistake or if you like launch too many machines or whatever, then you're gonna pay out the nose. And so far, so far I haven't, or we haven't had to pay out the nose because we had a, we were in the Microsoft for Startups Founders Hub program. and that gave us a huge amount of free Azure credits to be used within a year. Turns out that years over, the credits are about half gone, but Microsoft will not give us more time to actually use up the credits, which is par for the course. Like there was never even gonna, never really gonna be a discussion about it, but I still had like a few calls with them recently to see if there's anything that can be done. And the answer is a resounding probably not, but maybe we can like, like do a bit or something like that. And so, um, what I'm looking at is can I, um, can I use Microsoft Azure more efficiently, um, in, because now I guess you have to pay money for the stuff that I'm hosting there and that is definitely something that I've been doing a lot this week. Um, Dave (12:46.966) Yeah, yeah, yeah. Daniel (13:06.322) And the other thing is also like exploring like, hey, can I actually move parts of the stack or the entire stack somewhere else? And for example, look at other cloud providers like OVH and AWS, which might also give us free credits again. So far, I'm talking to both of them. They are, discussions are ongoing. And also I don't want to slander Azure too much. I mean, they put... Dave (13:22.42) Okay. Dave (13:27.011) Mm-hmm. Dave (13:31.65) Nah, no it won't. Daniel (13:34.082) the stores and their gets as well. But other than that, I don't want to slander them too much because they're actually super helpful bunch and also actually using Azure for me at least is a joy. So yeah, what I've been doing is the first of the thing or let me rewind that. So the main thing that I've been doing this week with server stuff is I've been trying to Dave (13:37.079) Yeah. Daniel (14:03.362) create a separate instance of our Druid cluster, which is, of course, the main thing that I always baby and always worry about. But it's outside of Kubernetes this time. This has been one of the main topics of the show. Is the Druid inside the Kubernetes cluster working? Dave (14:23.024) Yeah. Daniel (14:29.642) So I've written a few scripts, they're called Ansible scripts, that's basically a Python based system to basically set up and provision servers because my buddy Arno says, treat servers as cattle, not pets, which means like herd servers in groups and like don't like go into one server and then do something individual to that server, but write a script and then let that script run on 10 servers. And I'm really trying hard to do that because it's actually very good advice. And so I've been creating a bunch of Ansible plays, they're called plays, that will basically take a bunch of virtual machines or any machines really and turn them into a Druid cluster. And that works so far. The thing is, now those Druid cluster machines, they need a second thing called ZooKeeper, will then allow them to communicate with each other. And that's like a separate server and that needs to run alongside them in the same resource group, in the same virtual network. And that thing is somehow falling over. Whenever I actually put some pressure on that cluster, somehow the zookeeper suddenly vanishes without any error messages. And so, yeah, that's the, you know, that's the, that's the... Dave (15:37.934) Gotcha. Daniel (15:56.93) daily, the daily server problem. And so that problem doesn't affect the running, the day-to-day running of the elementary main cluster at all because they're still completely separate. But it's still scary because I kind of really wanted to get this done so that, because once this thing works reliably, I can actually just move all the traffic there. And the reason why I'm doing this is even though this is in that case, still a bunch of machines on Microsoft Azure is that I'm hoping to be able to use these machines much more efficiently as compared to inside Kubernetes and so have more performance with less machines and so pay less money because one of those costs will cost me about like a thousand bucks a month and I need a bunch of them. And of course, there's a few mitigation measures that you can pre-book them for a few months at the same in advance and then they get a bit cheaper and stuff like that. But yeah. Dave (16:35.512) Mm-hmm. Dave (16:45.962) Right. Dave (16:53.722) Mm-hmm. Daniel (16:54.646) They need to be used efficiently. What I've also been doing is I've been shutting down a lot of stuff that has been just experimental. And because I knew it was pretty clear that the time would run out before the credits would run out, at least in the last few months, I've been just trying out stuff and experimenting with stuff and seeing like, okay, does this work? Does this work? And so I've been trying to clean up all those experiments so that they actually don't incur actual costs. It's just like different, different experiments with how do we store data? How do we move data around? Um, stuff like that. Um, yeah. And so once I have my, um, my Druid cluster outside of Kubernetes, and I have gained all the experience that I need to gain here, then I can also, of course, deploy that somewhere else. Like if then I strike a deal with AWS, for example, and they, they give us like a lot of credits. Dave (17:31.054) Makes sense. Yeah. Daniel (17:53.474) then I will try and run the same script basically on AWS. Then of course I need to test again and then also do a few changes because AWS doesn't store its files in objects, storage stores its files in S3 for example. And so we need a different connector library, whatever, but basically like, yeah, I'm gonna try and be prepared for. Dave (18:13.291) Yes. Daniel (18:22.31) all the eventualities, then just see if I can run that somewhere else. And then watch the bandwidth costs between the two clouds eat me up. Dave (18:32.938) Yeah, I was waiting for the catch. I was waiting for the catch and all of that. Yeah. But, yeah. Daniel (18:39.342) So telemetry deck, I looked it up because I wanted to know the bandwidth costs. In December 2023, which was just the easiest to calculate right now, we used pretty, oh, like inbound traffic. So signal center telemetry deck was pretty much exactly 800 gigabytes. Dave (19:01.736) a fair amount. Daniel (19:02.934) Yeah, but it's actually, it's okay too, you know? Like it is, it's a fair amount and you need to store that data and you need to accept that data, but it's not impossible to pay for. Dave (19:15.65) Yeah, yeah, well, let's. Daniel (19:18.197) So that's actually 799.4 GB. Dave (19:21.674) Oh, so close. So, so close. Daniel (19:23.286) Yeah, but like we've like signal counts have like rise month by month these days. So it's going to be more in January, February, March. But yeah. Dave (19:29.636) Yes. Dave (19:33.906) That's really cool to get a bit of insight into what goes on to make it all work. And certainly on this show and just in our chats with each other as friends, Daniel, I've been following this since the very beginning and it still blows me away. You know, you've gone from something that you were running, I think, originally entirely in one server that you just kept beefing up and beefing up all the way through to now. You know, you're looking at multi cloud. Daniel (19:57.943) Yeah. Dave (20:02.962) networked clusters as being a yes, yes. And yeah, like I say, for somebody who's quite front end focused and app focused, it all seems like magic to me in a lot of ways, but it's cool. And I think you're doing all the sort of stuff that would feel intuitively quite sensible to me as well, like, Daniel (20:04.93) The cluster of wakens. Yeah. Dave (20:31.81) getting rid of anything that's not needed, trying to trim down your overall use to optimize that side of stuff. And then obviously exploring the alternatives. That makes a lot of sense as well. Daniel (20:40.654) Hmm. Daniel (20:43.822) Yeah. The thing is, the thing is all this, this kind of server admin work. What really, really helps me is keeping a log, is keeping a log of what I've done and also automating as much as possible, but not for the reason you think it is because you think like automating because like then you don't like you save to save time, but you don't save time at the scale that I'm at right now with automating. I could like do everything by hand and it would take about the same time, but everything I automate, everything I write as a script. Dave (20:55.736) Mm-hmm. Yeah. Dave (21:11.025) Mm-hmm. Daniel (21:13.71) There is also a document that shows me how I did it and how everything is configured. Because you can SSH into a server and then run some commands, and then the server is kind of different, and you just don't know what happened after a week, right? And same with the logs, kind of. So I really have these elaborate. I started doing this when I was trying to find out all the problems with that root cluster. Dave (21:29.623) Yeah. Daniel (21:43.13) And I kind of just kept doing it. Like every time I go into server land, I open Notion on a separate desktop. And I just like start logging. I just like write stream of consciousness style. Okay, I'm trying to do this. This is what I know. Like this is what I'm trying to accomplish. So I'm gonna try these things. New heading, thing one. And that really helps me because it helps me like scroll back up upwards and see like, what am I actually trying to accomplish? And then also a week later, it helps me. Um, it helps me just like, uh, like I think like, Oh, how did, how did I do the thing? Like, what is the exact command? I can just copy the command because I, of course, log the commands in there that I do. And also sometimes it turns out, Oh yeah, the very first error message I saw that I, that didn't give me anything now with the added understanding. I can. Dave (22:19.118) Ha ha ha. Daniel (22:41.218) just look at it again and it actually gives me the answer that, um, that I, that was staring my staring in the first part, but, but like, it's, it's probably gone from any console or whatever by the time I actually look at it. So it's good that I copy pasted it out and yeah. Dave (22:54.43) Yeah, and you know, you shouldn't rely on traces of things that are in consoles in boxes that you may have used for that information either. Like that's, yeah, that sounds like, yeah, a pretty good way of working to me. I feel like sometimes I should do the same when I'm deep in AV foundation video shader hacking mode as well. Daniel (23:02.538) Yeah. Daniel (23:17.258) It probably also helps, but yeah, like as software developers, we have a lot of those tools. We have a version control system that actually allows us to have pretty granular traces of what we did. And so it's not like, oh, we're just opening the directory and just hacking around and then can never find out what we did. Like we actually have the tools already that we can go back in time or just like read a log of what we did. And of course, that's not all. You can still build on top of that. But... Dave (23:26.743) Mm-hmm. Dave (23:41.882) true. Daniel (23:46.854) already, do you have a lot of stuff that I didn't have in Serverland? And of course, like actual professional sys admins will probably have a lot of that stuff and they will probably, I assume, do a lot more with this, with this automation, like, and there's tools like Terraform, which is AWS only, I think, which will not only like, like install stuff on a server once you give it the server, it will like, these are like files that when you run them, like they... Dave (24:06.957) Mm-hmm. Daniel (24:16.69) everything like you never like, you never even look at the user interface for Amazon AWS, you just run the thing and then at the end, like you have the whole infrastructure there. So Dave (24:27.762) I've encountered Terraform elsewhere, actually. JSON files. I don't know. I just remember that the syntax in that was horrible to use. But we're way, way into the weeds with these technologies here, Daniel. Go on. Daniel (24:31.073) Yeah? Daniel (24:40.705) Yeah. Daniel (24:50.23) Oh, wait, before you go on, because I think also we're super deep into it, but I'm actually using this not only to run telemetry deck, but I'm also deploying a new website. I'm gonna tell you the URL. It's one of those is githubdown.com websites, right? And so the website is called, has Dave made a website and finished adding features to govj3yet.com. Dave (25:03.396) Oh, yeah, tell me about that. Dave (25:20.839) I can't believe you registered a domain name for that. No, you did not. You absolutely did not. No. Daniel (25:23.997) I have not, no, but this is a title in our short document. And it says, has Dave made a website and finished adding features to Go VJ3 yet? What do release plans actually look like? And so I am actually, oh, that's a very nice gesture that you made. Dave (25:42.531) Ha ha Daniel (25:43.59) It just shows me that you know how to use a bow and arrow, or at least are able to use a bow and arrow, because your fingers are still there. Ha ha ha. Dave (25:49.898) I could potentially use a bow and arrow one finger Daniel. Um, but... The, um... Daniel (25:56.938) I think that's the origin of that gesture though, right? Dave (26:00.766) I have no idea. Um, I'm going to move on. I'm going to move on, but for listeners, not viewers. Um, yes, I definitely made a rude hand gesture to Daniel as he was winding me up just then with the... Daniel (26:04.652) Right. Daniel (26:11.702) But that's a localized gesture, right? So the Australians probably, you know. New Zealanders. Dave (26:15.194) I-I-I-Yes. Yeah, yeah, well anyway, yep. Getting to your point that I'm desperately trying to avoid because you're putting me on the hook. Have I made a website and finished adding features to Govj3 yet? No, so haven't made a website, haven't have just about finished. I've finished adding features. I am now adding. bug fixes and trimming one or two bits here and there, necessary sort of small bits of work. And if I look at our note, our last thing that you wanted to ask was, what are my release plans actually look like? So I'm going to screen share again, cause I enjoyed doing that last week, but we need to make sure we are definitely audio friendly as well. So let's have a look. Let's see if I can get that window up. So. Daniel (27:09.554) Audio Friendly. Dave (27:16.218) I can share this with you all. This is part of how I'm planning stuff at the moment. Super basic. This is an app called Bear Markdown Editor. And I just use headers and tick boxes and things in there. Daniel (27:30.142) Also a TV show about a cook. Pretty good show too. Dave (27:33.746) Yeah, true, true. Um, I've got everything in here, everything in this document, but zeroing into what you're talking about here. Um, yeah, I've got a couple of bugs to nail down, nothing to owner us. Um, and if I look at the release planet, it's here it is. We've got bug fixes, any features, dev work, no features there, but I've got a couple of things to check. Am I still sending analytics correctly? Um, because. Daniel (27:39.116) Huh? Dave (28:03.594) I've moved a lot around and did all of that refactoring. And it's entirely possible that things just aren't being triggered in the right way now. So I need to just sense check that, because some of those were coming from my old router and MVVM-based design pattern. And I've killed some of those view models. I don't think I killed any analytics, but I want to double check. And then, Daniel (28:21.652) Oh yeah. Dave (28:30.246) Equally, I can then check if there's anything new I should be adding as well along the way. Then I've got a whole thing about I want to go through and do some testing. I've got a pretty comprehensive manual test plan that I kind of have to do for major versions for GoVJ. And you'll see there I've noted that I'm going to run through that test plan on the oldest iPad and iPhone that I have that can run the app. And that's pretty Daniel (28:43.874) Mm-hmm. Dave (28:54.786) deliberate because for this sort of app that's where the issues show up, you know, I test on my My iPhone 14 Pro which is relatively recent and pretty powerful Everything runs beautifully and then you know, I've got here in my notes. I'm going to test it on an iPhone XR That will be different in its experience of the app because processing video is reasonably resource intensive Daniel (29:06.103) Mm-hmm. Daniel (29:22.454) And it's the iPad, it says in your document, is mired on iOS 16. Dave (29:27.762) Okay, yes. Yes, I believe that's the case. It's either 16 or it's the very last version of 15. But in any case, that was a very deliberate test. I had a couple of issues in the beta testing that were only exhibiting on this specific device. That's right, I am remembering it right. It was iOS 16. Now I went as far as ordering. an old iPad Pro 9.7 inch off of New Zealand's eBay equivalent website TradeMe reasonably cheaply to be fair, just as a test device, which is the first time I've actually done that but I used some of the revenue that Govj generates to then buy this test device so that I can better support my users and yeah. Daniel (30:22.606) Fantastic. Dave (30:24.842) So that'll be my test. I've got to do all of that. But you're asking very specifically, well, what am I doing to get this released on? Daniel (30:32.204) Ah, there's a section called marketing. Dave (30:34.182) There is, and that's the headspace I've got to get into. So last week I updated on doing screenshots and I've got my screenshots kind of planned out but not finalized. The reason they're not finalized is some of the UI was still being sorted out. That's now done. And the other reason was that in the screenshots I showed demo content and at the moment it's the Apple simulator images that are loaded into the camera roll of the simulator. Daniel (30:37.228) Mm-hmm. Dave (31:04.79) So it's all flowers and things and not really very motion graphic VJ like. So my first task that you can see on this list is this one, demo content. And I originally had, I was going to create 16 videos because that's a nice round amount that can all be loaded up into the 4x4 grid in the app. So that's a good number. But after talking to a mutual friend of Mark... Daniel (31:06.926) I'm gonna go. Dave (31:34.074) ask Chris, Chris A is over in our discord channel as well. He was like Dave 16 videos is a lot do you need 16? Yeah so let's come down to four like four different concepts and then each one of those will probably have three or four variants and I'll get my 16 videos anyway they'll be Daniel (31:46.058) Yeah, yeah, I was just gonna say. Dave (32:01.226) It's this animation, but from top down or left to right or different angles that I can I can get, you know, four for one as it were from each of those. So that's where I'm at the moment, to be honest with you. So the order of this is, yeah, I've got demo content, then I can get my screenshots up and running. Then when I've got my screenshots, I can update the website and I'm actually going to use the same theme. Daniel (32:04.663) Mm-hmm. Daniel (32:10.768) Yeah, that sounds very smart. Dave (32:27.79) as I used for the Govj Pro landing page, which was a theme gifted to me by your good self, Daniel, that 11T setup. So I shall refresh and update the base of that, pull these screenshots in. I'm not going to make it super complicated. It's going to be a, you know, very simple vertical flow screenshot. Here's part of what the app does. Blah. Download on the app store. just a landing page to show what the app now does. But the key thing is, is I do need to update the privacy policy because there's a few things that need to be expanded upon that are not currently there. So nothing too awful. I'm using feedback bulb for feedback. And I wanna make sure that's got a section, front and center in the privacy policy because it should. Yeah. And... Daniel (33:20.802) Fantastic. Dave (33:24.422) Once I get to that stage, it's kind of like everything all together to release. To be honest, like I've got a couple of notes here. I'm going to need to make some things up for the socials. So images with text for Instagram, Facebook. So I'm going to pre-release it. I'll pull everything together. I will submit to the App Store to for review, but I will hold it pending developer release. And then at that point. I will plan it for say a Friday evening here in New Zealand. It'll end up being a Friday morning elsewhere in the world. Um, and I will push social media through the week ahead of that. Um, to sort of make people know that it's coming. And then on my, my Friday evening, I will announce that it's there and hit that button and all of that. And we'll be off into release mode, but that, that then means I've got a weekend then to sort of signal boost it. Um, Daniel (34:15.586) Fantastic. Dave (34:20.726) And I'm taking advantage of being ahead of the rest of the world, mostly in time zones. Daniel (34:26.614) Yeah, yeah, yeah. Dave (34:29.962) Yeah, so that's the plan. You wanted the plan, you got the plan. Ha ha ha. Daniel (34:33.698) That was like a fantastic plan. I love that you have this all planned out so much. And I love that you are now thinking about images with text because that is something that I always forget. And then because like my personal social media posts are just texts because like I'm just, I wanna say something so I say it, right? But especially for marketing purposes, makes total sense to have like images with texts. And so yeah, it's good that you have those. Dave (34:57.078) Yes. And there's a few things I'll be doing around it as well. Like, so this is probably going to be end of April, beginning of May, this release actually goes through. If I think about the work I've got involved here, I'm currently picking Blender backup, which I have used in the past, but is not an immediate first skill for me. Daniel (35:10.591) Mm-hmm. Dave (35:27.438) And my nearly 18 year old son is definitely giving me help with that, which is cool. Yeah. He's, he's spent the last three years being very immersed in Blender. So he's, uh, is a good resource, uh, to have in-house, but, um, he's also super busy. So all I can really do is sort of say, Hey dude, I'm stuck on this thing. How, how do you do that in Blender? And he comes and helps me with on the spot bits, which, um, is definitely a table turning. Daniel (35:31.85) Haha, the young'uns. Daniel (35:48.105) Mm-hmm. Dave (35:56.522) sort of vibe because that's how I've taught him over the years. Yeah, yeah. So yeah, I mean we'll see. I'm gonna bounce things off of my mailing list as well and keep them up to date with the progression of things and we shall see. I'll give it as good a launch as I can give it and... Daniel (36:00.738) But yeah, that's fantastic. That's really good. Daniel (36:10.26) Mm-hmm. Dave (36:20.322) In a lot of ways, this will form a bit of the draft plan for releasing Go VJ Pro, hopefully by the end of the year. So. Daniel (36:27.062) Yeah, makes sense. Are you gonna like, are you thinking about like releasing on stuff like product hunt? Dave (36:33.91) Ooh, maybe for pro hadn't really thought about it for this version 3 of the existing app. Um, I totally could. There's nothing wrong with doing that. Yeah. Daniel (36:36.316) Mm-hmm. Daniel (36:43.21) And you could, yeah. The thing is, I've basically tried for every, like every, I don't know, half year, every nine months or so, I make a new major version for telemetry deck, which is totally arbitrary, because we don't have actually a major versioning system. But every now and then, I'm just like, OK, this is telemetry deck version five. And then we're going to create a press release, write some outlets, and also, sorry. Dave (37:01.229) Yeah. Daniel (37:13.13) and also put it on Product Hunt. And I did that for versions two, three, and four. And it was also always kind of mediocre result. So I was like, okay, I think as in like not so many people actually came on to register or something. So I was like, okay, I think I'm gonna skip that for five. I actually did skip that for five, but then actually, I actually seen other projects. Dave (37:23.96) Mm-hmm. Daniel (37:42.69) like really take off, like developer focused projects really take off on product hands. And so I'm like, oh, maybe I'm holding it wrong. Maybe it's not the fact that product hand is dead, but that I am actually holding it wrong. So I'm thinking of trying it out again, but I think I need more help. So if you're someone who has, who listens to this and who has like a really, has had a really successful launch of product hand, I really wanna talk to you. But yeah. Dave (37:52.792) Mm-hmm. Dave (38:07.671) Yeah. Daniel (38:09.702) Speaking of websites, I really like that you're reusing that template, that you're not spending hours and days on just creating something completely new because it makes total sense to just reuse this, maybe change a few, I don't know, colors or something, but then reuse this and then have a, it's all about the brand identity and also it looks decent too, so you can just continue with it, right? Dave (38:25.88) Mm-hmm. Dave (38:35.794) Yeah, absolutely. And there's a bit of that going on, even with the app UI as well. So one of the things I changed with version 3 is I've changed how some of the sliders in the app look and feel. They were system standard sliders before some of them, which is fine, right? There's nothing wrong with that. But I've now made using this library called Compact Slider that lets me do a really nice gradient. Daniel (38:48.104) Mm-hmm. Daniel (38:52.662) Mm-hmm. Dave (39:05.678) of slider effect and it has stepping and notching and shows the value of the parameter which is exactly what you need for a video performance type app. And that I'm using that in the prototype screens that I made for Govj Pro and I was looking at the update last month and kind of thought well Daniel (39:07.164) Oh, nice. Dave (39:33.546) Why don't I just use those in the main app already, like use it early? Added it and it instantly kind of set the UI off because it's actually quite nicely gradient-y colored and it just gives it a little bit more. But yeah, that's a good example of, I'm already starting to build up this design language in the app that will be shared between Pro and Classic. And there'll be some nuance to sort of, obviously Pro is gonna have its own feel as well. Daniel (39:37.899) Yeah, totally. Daniel (39:42.224) Mm-hmm. Dave (40:02.518) But already I'm laying down that sort of groundwork of these are, they're a family of apps or they will be a family of apps when they're built. Daniel (40:11.502) Cool. Fantastic. I actually also worked on the telemetry deck website. That's the other thing that I did in the last few days. So the journey was as follows, that I had recently discovered that, do you know what lighthouse scores are? Dave (40:19.43) Oh yeah, how's that gone? Dave (40:31.915) I don't. I kind of do, but I want you to explain it. Daniel (40:33.39) Okay, so Lighthouse, right, okay, so Lighthouse is a tool made by Google that you basically point at like one page of your website, and then it gives you a score. It gives you four scores, it gives you one, and all of them are out of 100. So it gives you a performance score, it gives you an SEO score, it gives you an accessibility score, and a fourth one that I have currently forgotten that will come to me in a second. But basically, the... Those three are the important ones, to me at least right now. And I usually run those on CI. So it's a tool that you can also run from the command line and it will just give you a score. And I kind of just ran them and forgot about it. Anyway, I recently discovered that my, especially my performance scores, had dropped dramatically for the landing page, for the main front page of the whole. of the whole thing. And that means that your Google ranking and your search engine ranking in general will go down as well. Because if your page is slow, then Google will just say like, okay, this page is slow. Like why would anyone want to go there? We're gonna rank it down. And same with accessibility, of course. And... Dave (41:38.714) right? Daniel (41:54.222) So I was experimenting and updating all my images to have the correct sizes. Also, there is now technology where you can actually supply different sizes for images for different types of rendering. For example, I'm supplying images in 0.5x, 1x, 2x, and 3x so that they look good on all eye devices and stuff like that. So I was like updating all the images. And also another thing is that on some sub pages, I'm also actually including live charts right now. For example, on blog posts that discuss the iOS market share or stuff like that, the charts are live so you can play with them. And also on the front page, there's a few like live examples further down the page. And so it needs to load the chart library. And the chart library that I use is called eCharts. And that is a whole megabyte. And that kind of was loaded just in line, as in, when you load the page, the browser is immediately instructed to then also load the eCharts. And it will not display anything unless it has really fully loaded, which takes about 25 years in computer time. Dave (42:57.535) of yeah. Dave (43:06.111) Right. Okay. Daniel (43:14.526) And that is actually something that I'm a bit embarrassed about. Anyway, I sat down with my friend Florian, and we went through that. We built a bit of a loader that will watch out for any charts, and only if the charts are actually visible, it will then try to load the library once and then actually display the chart, which also makes them animate nicely when you actually start watching them. And then, I don't know, do you have... Like, don't open it right now. Dave (43:39.642) Nice. Daniel (43:43.094) But when you think about the telemetry deck homepage, it used to be like a huge title, then a smaller subtitle, and then a large screenshot. And Google hates that screenshot somehow. Like, at first I thought it's just about the file size. So I replaced it with the same image, but in WebM. WebP, I mean, format, not a movie. Dave (43:43.619) Mm-hmm. Dave (44:07.734) Yeah. I know. Yeah. Daniel (44:12.086) that the file and it's like compressed to the like to the Dickens. Um, and so the file size is okay. It's a modern format, which Lighthouse cares a lot about. And, uh, yeah, it still hates it. And so I tried various other things. I tried like, oh yeah, I just like have it not load and then loaded with JavaScript and like nothing worked. And then, then Florian was like, why don't we just. Why don't we just remove the image? This directly underneath the image is the testimonials. Let's move those further down as well. And we basically just removed that single screenshot and moved a few things around and it actually works. Because if I go to the page now, I will immediately see an animation, which is basically the chart that is animating in. Dave (45:02.833) Okay. Daniel (45:09.726) And also, I still see all the features. The purpose of the screenshot was to show people what it's like using telemetry deck. And it turns out, I have content that does the same thing, but also actually in an interactive way, where it just shows individual graphs that I can actually interact with. And then also, it will explain what the charts mean and what all this means. Dave (45:09.913) Yes. Dave (45:39.242) Yeah, yeah, I'm looking at this now in our screen share on the video and it's looking fantastic Daniel. Daniel (45:39.45) And, um... Daniel (45:45.39) And so yeah, this is just, this is all content that was already there. It's just rearranged. And I'm actually pretty happy with that. Dave (45:54.243) That's cool. So Google didn't literally hate your image. It just hated it there. Daniel (45:59.042) No, the image is gone. The image is not there anymore. That screenshot is just, I think it's on some sub page still. But yeah, the image was directly on the front page under the title, basically. There's a title, then a subtitle, then a big call to action button. And then there would be a screenshot. And now I've heard. Dave (46:03.437) Okay. Dave (46:10.801) I'm just curious, I got this, this like. Daniel (46:26.942) I've completely replaced that screenshot with various individual example graphs or charts. And that seems, at least technically, like, I mean, you can't look into Google and like it needs a few days. You also need a few days to actually see the changes. Dave (46:34.249) Mm-hmm. Dave (46:43.096) Mm-hmm. but your lighthouse score itself is really, really raised, has it, since making these changes. Daniel (46:51.89) Oh yeah, it's like, yeah, it's not no, no backup into a proper. It's not, it's not 90s yet. I got to work a bit more for 90s, but it's, it's in the low 80s, I think. No, which is, which is okay. Which is I can, I can go to sleep with that. Um, yeah, I mean, I, I probably need to do a lot of work on the website still, but, uh, I kind of like that with, uh, not a lot of work. I kind of had a, like found a good way of. Dave (47:04.726) Nice. Yeah. Daniel (47:21.767) this. Dave (47:22.65) That's awesome. That's really very awesome. And again, I think that feels like the name of the game at the moment is like, like you said, for not a lot of work, you then end up with that bonus. Like, yeah, for all of my detailed release plan for Govj3, I mean, decision-making like that, okay, I don't need 16 videos. I need four that I can vary. I'm definitely all about looking for those, not quite shortcuts, but it's about payoff. Daniel (47:35.202) Yeah. Dave (47:52.57) for your time as well. Daniel (47:53.794) payoff is like a fantastic word for it. Yeah, like I have all these things, like can I use them in as many different ways as possible? And I mean, like Apple does that a lot. Like, you know, like Apple does, Apple will create a feature that, I'm trying to think of an example, but I don't know. Apple will create a feature that does this, and also a tiny feature that does this, and then suddenly they work together and give you something completely new. And that's like. Dave (48:21.578) Yeah. And it's just something for us to be quite aware of. I think it's very easy to sort of give yourself a laundry list of everything in the kitchen sink and think, well, okay, these are the things I want, right? I've made the list, they're special. And that's easy to an extent, certainly when you've got all the ideas in your head and you've been thinking about this stuff for a while. Daniel (48:23.286) That's really cool. Daniel (48:28.931) Hmm. Dave (48:49.874) The hard bit is then just being honest with yourself, I think, and then looking and going, okay, what's the most pragmatic thing I can do here? What's the best use of my time? Do I need all of these bits? And to trim it back. I think in your case, if I think about optimizing the page and that side of things, yeah, it's about being open to just going, do I really need that? You know, it's the same question, really, do I really need that? Daniel (48:56.725) Yeah. Daniel (49:17.226) Yeah, I think in the future, I actually do want to put more work into the website. And because I want to have content that is easily discoverable and searchable, and that gives a lot of value to people so that they keep coming back and they keep recommending the page because any traffic that goes to the website is of course directly correlated to... Dave (49:18.913) at this point. Daniel (49:44.074) like signups and then that's directly correlated to actually like payments. So, I think it makes a lot of sense to actually put more work in, but the thing is I am not an expert on what exactly do you need to change. So I think medium term, I want to find someone or talk to someone who is an expert on these kinds of. Dave (49:49.188) Yes. Daniel (50:11.102) content optimization tasks. And if I can find someone, then, and that person can then tell me, hey, these are the three things that are actually efficient to do, then I will probably put in more work, but I don't have the time to just like, I don't know, let's just go fishing in the dark. Dave (50:27.802) Yeah, yeah, and unfortunately you've not played the long game that I have and you don't have a son who's been training in this for the last three years. Daniel (50:38.852) I have no children that I know of. Dave (50:42.304) And the cats aren't that good with it, so... None. Daniel (50:44.63) The cats don't have thumbs. I make fun of them a lot for it. They don't have thumbs. And I always, like not always, but a lot of the time I would just like laugh at them. Like, ha ha, you don't have thumbs. You need me to open your food. Dave (50:58.926) You walk into the room and you're like, how you doing kiddies? Two thumbs up. Ha ha ha. Dave (51:09.13) Ah, they say the same thing though, every time, meow. On that note, Daniel, on that silly, silly note, I think I'm gonna have to wrap the show here, mate, and get off into the rest of my day and let you get some sleep because it's late in Germany right now. Daniel (51:14.744) Yeah. Daniel (51:22.722) Fantastic. Daniel (51:27.934) It is late. It is like super late. So yeah, I'm gonna go straight to bed, he said, anticipating at least 45 minutes of TikTok scrolling before. Yeah, no, I'm gonna try to sleep early. I have, like, I just, there's so much to do. And also, like, I am still feeling the effects of my travel and I really need to get 100% back on healthiness. Dave (51:38.67) Hahaha. Dave (51:52.078) Mm-hmm. Dave (51:56.832) Mm-hmm. Daniel (51:57.658) Like you've seen, I've muted myself coughing a few times. So yeah, like, so I need my sleep. Anyway, thanks so much for listening, everyone. Please rate us on iTunes and on YouTube. Give us that coveted, coveted thumbs up. Send us emails to contact at waitingforreview.com and also send us messages and whatever at where... Dave (52:03.135) Yeah, more sleep. Dave (52:15.212) Yes. Daniel (52:26.498) Can people find you Dave? That is actually not a good segue, but you know what I mean, Dave, what are your cool socials and addresses? Dave (52:29.512) Hey, ha ha. Dave (52:34.87) Well, you can find me over on Mastodon and thefadiverse at dave at soci And you can of course find all about my apps over on lightbeamapps.com Please don't comment on the look of the website there. I've not got round to that yet. That's down the list. Yep Yep, yep. Yep. You can go there and have a sneak peek at GovjPro's website Daniel (52:52.012) yet. Daniel (52:58.15) Don't harass and or slander Dave. Like only I can do that and I will only do it very gently and lovingly. Dave (53:04.786) Oh well I appreciate that Daniel and I appreciate you and where can people find you? Daniel (53:12.694) Yeah, find me at daniel at soci and also go to telemetrydeck.com and check the lighthouse scores and the pretty moving animated charts and stuff like that. Dave (53:27.61) they're very pretty. Well it's been great talking to you Daniel. Take it easy, get some rest and yeah see you soon. Daniel (53:31.918) chance. will do. See ya. Bye. (The wave, so important.)