Sveriges mest populära poddar

FLOSS Weekly

Episode 767 Transcript

N/A • 24 januari 2024
FLOSS_Weekly-Ep767

Jonathan Bennett: This is Floss Weekly, episode 767, recorded Wednesday, January 24th. OwnTracks, are we there yet?

Hey, this week we're talking with J. P. Menz about OwnTracks, a modular set of applications that lets you track, view, and even share your own location data in whatever way you want to. But the most important thing is that you stay in control of it. You don't want to miss it on today's Floss Weekly, so stay tuned.

Well, good morning. It is time for Floss Weekly. It's a show about free, libre, and open source software. I'm your guest, Jonathan. I'm your guest. It's gonna be one of those days, isn't it? I am your host. It's not just me, I have the wonderful Jeff Massey with me, which for some of you, this is a familiar face.

But for others, this may be the first time that you get to see him. Jeff, welcome!

Jeff Massie: I am excited to be here. I'm normally seen on the untitled Linux show with Jonathan. So this is my first floss appearance. So very excited yes.

Jonathan Bennett: Yes, I am excited to have you here and We're talking we're gonna be talking today with JP men's about own tracks and you know Maybe not about own tracks itself, but this idea you're a little familiar with aren't you alittle bit?

Jeff Massie: Yeah, I've You know, I, I like riding motorcycles and, you know, there's a lot of, uh, mapping software I've used in the past. I'm not an expert by any means, but, you know, plotting routes and figuring out where you've been and where you want to go. And so I've. I'm very excited to hear about this, this software.

Jonathan Bennett: Yeah. Now I have used own tracks in, in kind of a little different way. So one of the things that I do a lot with these days is the Meshtastic project, which that's Laura radio. and a, a mesh protocol for it, so you can get one radio here and one radio there and then one radio at your base station. And the far radio can send a message.

It'll get repeated by the middle one and then picked up by your base station. And one of the things that we do with that is send GPS locations around. And I went to looking for some solution that would let you keep track of those GPS locations. I kind of wanted a replacement for Google Maps and the Google Timeline feature.

And something that would work off grid, even if you don't have internet access. And so I went looking around, I found one solution, and went, Oh, this looks cool, and saw that it was written in Java, and went, Nope, look for something else. And, uh, eventually came across OwnTrax, and I really like it. And so I've got a, I've got a little OwnTrax installation set up here at the house.

And, uh, you know, it'll, it'll, When everything is working correctly, that's a whole different conversation, But it'll track me all the way across town. And then when we go to do bookkeeping at the end of the month, or the end of the week, We can figure out where I've been and then, you know, make notes about who we need to bill for it.

So some fun stuff there. Let's go ahead. Let's not delay any longer. Let's bring JP on the show. And, uh, we'll get the, we'll get the word from the man himself. JP welcome, sir.

JP Mens: Thank you very much. Nice to be here. Thank you for having me. Yes,

Jonathan Bennett: it is great to have you. So let's talk OwnTracks. Give us, give us first that 30, 000 foot view.

Did we get it right? What is this project about?

JP Mens: Well, first of all, you owe me 78 euro because I read yesterday that you were playing around with MeshTastic and immediately had to purchase two devices to verify that what you were talking about actually works. But that aside, 

Jonathan Bennett: Sorry, not sorry. Sorry, not Sorry.

JP Mens: The 30, 000 foot view of OnTracks. OnTracks is a, is a location tracking software. We have two apps, one on Android, one on iOS, written by two different people. There are basically four of us in the team there's on the one hand Christoph Krei who does the iOS software, then originally it was Alexander Rust, but now it's Andrew Graus, who's responsible for our Android app.

Linus Groh, who's basically does our front end, and myself, I'm a bit of the janitor. I do a bit of documentation and I, I, I still. Believe in Father Christmas, and I think I am the team lead, but I think I'm the only person who actually believes that. Um, so OnTracks is, um, an application which we originally created, which originally invented.

Um. And I was thinking actually yesterday, first of all, OnTracks is now, this year, we're going to be 10 years old. And OnTracks, we originally created as a possibility, as a solution for a tracking app, which Does not deposit your data or my data, my tracks anywhere other than in a back end infrastructure that we control.

So that, that was the original intention and we are, um, still today a little bit proud that we mostly manage that. I say mostly, of course, because there are things that we cannot, um, That we cannot forbid, for instance, if we use iOS, then obviously Apple and the Apple Maps subsystem is going to know that we perform, for instance, a reverse geo lookup.

But other than that, supposingly, if Apple is trustworthy, other than that, the data that is collected by these apps goes to an end point of our own choice. That's the. That's that's the premise that was the original premise

Jonathan Bennett: and how does how does that data get sent around? What's the what's the back end protocol?

JP Mens: the protocol that we chose originally or that I originally selected was MQTT and MQTT is a TCP based protocol which was created for the Internet of Things It's a public subscribe protocol which permits Um, clients, in other words, programs, any application, any program, any scripting, uh, language, et cetera, to publish, uh, messages.

Messages are published on a particular topic name. Topic is a hierarchical, uh, 64 kilobyte, if I remember correctly, 64 kilobyte UTF 8 string, which is slash separated. And, um, A topic is created by publishing a message at that topic. On the other end, um, we have a broker. A broker is just a highfalutin name for a server.

And the server, um, uh, Knows about access control, for example, knows about security, knows about transport layer security, etc. And the server will also have, this broker will also have clients who are listening on particular or subscribing to particular topics. And if a client, um, If the broker gets a message for a particular topic and that broker sees there is a client interested in that particular topic, that message is immediately deposited at the client's doorstep.

So the client need not pull. And all this happens with a Payload binary payload of up to 200, 256 megabytes and a very, very small protocol overhead. And that was, uh, one of the reasons why we chose MQTT versus for instance, HTTP, which is a relatively verbose, um, protocol. So MQTT was, uh, the, the, the method that we use for color that we also still today use for communication to be fair.

Um, meanwhile it took a few years, but meanwhile we have also added the possibility that these apps at your choice speak either MQTT or HTTP, depending on Mm-Hmm, , um, the backend that you are able to provide. Right. But we have a preference for MQTT. It is faster, it is more lightweight. Um, we have, uh, yeah, certainly done more testing in the MQTT area.

Um. So the whole, the whole application stack works better with MQTT.

Jonathan Bennett: Sure. Now MQTT is unencrypted, right? And so I would imagine one of the big advantages you would get from supporting, I assume, HTTPS is that you can wrap it inside of a secure sockets layer. Well,

JP Mens: um, on the one hand, you are, of course, right.

On the other hand, MQTT does provide TLS, Transport Layered Security, what you just called, erroneously, I must say, called SSL, which doesn't exist anymore. It's called TLS. Yes, yes, yes. But it doesn't matter. I know what you mean. And MQTT speaks TLS. On top of that, so we have end to end encryption between the client and the broker.

On top of that, within OwnTracks itself, we can, or well, not we, you can at your choice, configure a secret key, which is used by the apps to, um, encrypt, um, the payload. So irrespective of whether you use TLS or you don't use TLS, the payload can additionally be encrypted and that is then decrypted on the receiving end.

Jonathan Bennett: So The way that I use it I didn't know that I had not looked deep enough to know that all of that encryption was set up. That's pretty impressive The way that I use this is just with a wire guard vpn, which on you know on an android phone is is great. Although I think on iOS that might be a little bit harder to pull off.

Um, so what, what is kind of the project stance on that? Do you, do you recommend that people use a VPN if they can? Or do you feel like the, the own track server is robust enough really to be able to expose it to the internet is the thing that makes me nervous the most about doing something like that.

JP Mens: Yeah, we don't, um, we don't have to. Expose the OnTrack server, the backend, what we call our recorder. We don't have to expose that to the internet. The only thing you expose to the internet would be your MQTT broker. And there you have a TLS connection between the client, between the app and the broker itself.

So you have full encryption there. VPN, by the way, you just mentioned WireGuard, which might be a bit more, uh, you said might be a bit more of a problem on iOS, is definitely not a problem, so it works perfectly well. The same way that you would use it on Android. In my personal opinion, that would be overkill.

It's just too much. If, uh, or assuming a certain amount of paranoia, which is probably quite healthy, um, you could do, uh, for instance, your wire guard or any other VPN on top of that MQTT over TLS, and just to be really sure that you will never be able to see your messages, uh, you could then encrypt the payload and forget the key.

Jeff Massie: So, you know, I. You know, I'll be honest. I'm not as network savvy as Jonathan, but I'd like to step back a little bit and just say what made you wake up one day and say, you know what? I think we need own tracks. I want to start this. I mean, was there an event or? What sparked this whole thing?

JP Mens:  There actually was an event. My child was growing up and wanted a smartphone, and we decided, yes, you can have a smartphone, but only if we can see where you are. So this was consensual. I think that's a term that was a politically correct term. And the original The original solution was to, of course, configure a small Android phone, if I recall correctly.

The original solution was to configure Google Latitude. This must have been in the year 2012, I think, roughly, mid 2012. And, um, once I saw what Google Latitude or the data that Google Latitude was collecting, I thought, no, that's not a good idea. I really don't want to do this. And on top of that, that was the advent of Google Latitude, um, sunsetting itself.

I think roughly in the year 2012 or early 2013, they Disintegrated themselves, uh, or turned into some other product. I can't keep up with the naming schemes. Um, and, um, that was roughly around that time where I was toying with MQTT for all sorts of other things. And I thought it's surely, it must be relatively easy to have a small app on an, on a smartphone, which collects a position and publishes that over MQTT.

And. That was all fine and dandy, but I have no clue on the, on how to program these apps. So I asked around a bit, and Alexander at that time said, yeah, I'll do a prototype with Android. And my friend, uh, Christoph, whom I've known for very, very many years now, said, oh, I'm, I've been toying around with iOS.

Um, and we had the first version, which was sort of extremely minimal, um, but that was the, that was the beginning of what at the time, by the way, was called MQTTtude as a spoof on latitude. And of course, due to the fact that we use MQTT as protocol. That's great. Now that name, that name, I loved that name, but I think there were about five people on, in the world who could actually pronounce MQTT dude, there were about 17 T's in there.

And then we decided at one stage, now if we want to become rich and famous, we have to change that name. And that's when we rebranded to Um Trax.

Jeff Massie: Very nice. Well, I mean, it's, it sounds like, you know, a great story there. And do you have any idea how large it's grown now? Well, you know, where it. Where, you know, where, where do people use this?

Is this like global? Is this, you know, adopted more in certain regions?

JP Mens: Well, um, you can ask me any amount of questions you want and you can put thumbscrews on me, but the good news, the good news is we don't have a single clue. Because you see, it's not our data. We do not provide an end point. We do not provide a server.

We do not provide any portion of the infrastructure. So, uh, Jonathan was mentioning or mentioned earlier that he uses own tracks. I didn't know that. Yeah, we don't know. So to answer your question, Jeff, we really don't know. The only way, there are a few numbers that we have and a few, uh, a few bits and pieces of information.

So, um, I asked my, my colleagues, uh, Christophe and, um, Andrew the day before yesterday, how many, um, apps are currently, uh, currently installed. And the only thing we see is the installed, respectively the updated user base. So we know. That roughly two days ago, uh, on iOS, there were approximately 19, 000, almost 20, 000, um, active versions.

So these are versions of own tracks, which were recently updated. But this of course could be, for instance, um, Jonathan with his iPhone, uh, three years ago, five years ago, he installed. Or he downloaded OwnTracks, he forgot to remove it and it's been updated. Okay, that's, that's all we know. On Android we have roughly 13, 500 devices, so we have a total of approximately, probably, 34 35, 000 devices out there, which have OwnTracks installed.

Whether it's actually functioning, whether it's actually working, that we don't know. Sure.

Jonathan Bennett: Um, do, do you know, this is sort of an Android specific question, but is OwnTracks available like on the F Droid store or any of the alternative app stores?

JP Mens: Um, and, uh, Onetrax has been available on the F Droid store.

Andrew pulled it down, if I remember correctly. Uh, we are still in a bit of a redesign phase. Uh, it's been a bit, a bit of a difficulty having that. Uh, but it is planned. To be re reintroduced, if it's gone at all, to be reintroduced in the Android store. We know that there are people who, um, have Android phones and who do not wish to use Google play services, right?

And for these, it is important to have a completely Google decoupled, um, app. And yes, we have been there. I think it's. Disabled at the moment for a particular reason. I can't remember the reason. I'm sorry But it is it is there it is it is in planning

Jonathan Bennett: sure I can only imagine that you know the the set of people that want a Degoogled phone and the set of people that don't want to share their information with Google that says have a lot of overlap

JP Mens: Uh, yes, yes, definitely, definitely.

And, uh, so it's, it's important that, um, uh, the request for a, an Android version on F Droid is already many, many years old. I think something roughly in the order of six or seven years, maybe, already. But at the time, uh, or not only at the time, we just don't have the resources. We're a small team. One guy at the moment, one chap, uh, working on the Android, uh, version, and of course, I mean, this is open source.

This is, uh, these are the things that we do in our, in our free time, in our spare time. So it, it just takes a bit.

Jonathan Bennett: So, uh, a couple of different directions I want to go with that. And the first one is, so you mentioned this is a, a spare time project. It's a labor of love. Is there, is there any plan? Have you thought about trying to make any, you kind of off the cuff earlier, said something about becoming rich and famous from this.

Um, is there any plan to make any money from it?

JP Mens: Uh, yes. Uh, well, there have been plans. At the moment there are no plans. There have been plans. We actually, um Must already be something like six years ago. We spent an immense amount of time and effort Implementing something that we called hosted we wanted to offer The possibility that somebody could download the app and solve it on their phone and and get going.

Yeah and pay us a monthly Subscription sum and and then be done with it. So we have very many people who are very interested in own tracks In using the own tracks apps and also getting the data, etc But are not I just not Either willing or just not tech savvy sufficient to get the whole infrastructure set up because it is not easy.

Definitely, it's not simple. Um, so we spent months. Lots of months in testing and in store update or what are they called in app updates and in app purchases and things like that to get this, uh, running. And it actually was then running. And suddenly we realized what the hell are we doing here? We're offering, we're, we're, we're intending to offer a product, which goes 100 percent against our philosophy.

And that is, um, a tracking app, which we, which we do not control. So we actually tore out that software completely, um, within a few hours, and completely abandoned that, completely abandoned that idea. So While we would probably want to become rich and famous. Um, I mean, what did Facebook pay for Instagram?

I think it was five billion dollars or something like that. We'll take the one billion. It's okay. We don't, we don't have so many people. But I don't think that we'll actually get there.

Jonathan Bennett: Have you had anyone reach out and pay, like, bounties for, uh, particular features?

JP Mens: Um, it's, it's happened occasionally. Uh, we had one situation.

There was a chap who was, um, worked for the, I think, Australian Met Office, meteorological station. And he Or they wanted, uh, to deploy a whole bunch of iOS devices, interestingly, iOS devices, um, to obtain, um, the, the barometric pressure. And, um, so we thought about earning money doing that. But Christoph, it took about, it took Christoph about 15 minutes to get the software done.

And then it was just in there. So Christoph is somebody who, you give him an idea. And he just does it. He doesn't talk about it, he just does it. On the way to Mexico, Jonathan was mentioning earlier, that I was, that I showed him the track of my route through Mexico. On the way to, at the airport in Frankfurt, I had the idea, of being able to submit point of interest, which could then be visualized on the phone and also then later on in our backhands.

And I boarded the plane, local time here, something like 1330, and I deep, deep planed in Mexico City at 2100, uh, in the evening. And he had already done this after. Yeah, so it's, it's, uh, Yeah, so we, we, our software, our apps publish, uh, location information, um, as blobs of JSON. So in this JSON, we have, for instance, latitude, longitude, obviously, uh, velocity, altitude, battery level of the devices.

So that can, for instance, be used for monitoring the battery level of your spouse's iPhone. Um. We transmit meanwhile things like the SSID, the Wi Fi SSID. There are people who have been requesting that in order to determine which. Which location are they? Are they in the office or are they at home? We transfer a so called, uh, tracker ID, which is a two letter indicator, which is used on the map, on the app, to indicate, uh, Oh, it's Jonathan or it's Jeff or it's JP, yeah, who, um, at that position.

Um, then we have, uh, the possibility, for instance, of, um, producing, um, um, What we call transition events. So in the apps, you can define regions, uh, geo fences, we call them or regions, which are circular regions. And when the app detects that it has exited that region, it transmits, uh, over MQTT or HTTP, a transition event, which indicates I have now, I'm now leaving this location or, uh, conversely upon re arriving, I am now entering this location.

And people use that, for instance, for, uh, home automation.

Jonathan Bennett: I was just going to ask about that, because you're both using MQTT. That seems like something you could tie into Home Assistant pretty easily.

JP Mens: Absolutely. I think the first integration into a home automation software was done by our friend Ben, who lives in New Zealand.

And he created an integration for, excuse me, he created an integration for OpenHAB. Then somebody else, we don't know who it was, created an integration for Home Assistant.

Jonathan Bennett: You could do some fun things with that, like, uh, you know, automatically open your garage door when you get within a quarter mile of your house. So turn your lights on. All sorts of fun stuff. Or

JP Mens: it's, uh, it's evening, it's dark, we know it's dark, please turn the, please turn the lights on. Exactly. Things like that.

So that, uh, is used quite a bit to our knowledge. Um, when I say to our knowledge, it's because somebody sends us an email or because somebody raises an issue and says, I've been doing this and this and this, and maybe this doesn't work, etc. So, um, yeah, as I say, to our knowledge, these are things that are done quite a lot in home automation

Jonathan Bennett: Yeah, I imagine that, uh, the fact that it runs over, well, I mean, it's simple JSON over MQTT, that is a really accessible sort of data type. Imagine that makes it really easy to plug into all sorts of things. I mean look what what I did with Meshtastic It's because Meshtastic supports MQTT And so all you have to have is a little tiny translation layer right there in the middle and it'll just say okay Well, here's the Meshtastic stuff I'm gonna break this apart and then put it back together in the way that OwnTracks wants it Just sit there and take it off the server and feed it right back in everything's happy.

I mean, it's it's Basically trivial to work with that that must really empower a lot of things.

JP Mens:  Yes for people who are tech savvy and who like toying around playing a bit Um, I think it is probably an excellent solution We know for a fact That there are people who for instance do not use our official If you can call it that official back end or recorder, but instead have created their own back ends because they pull out the, they pull out the Jason, parse out the elements that they want and maybe store it on a SQL database or whatever with it.

It's just, uh, really, really, um, accessible as you call it.

Jeff Massie: Awesome. So if I want to, if I want to start this, I load the app on my phone. Now, is it? At the most basic level, is that, am I ready to go? I mean, is that, is it self sufficient just in the app or?

JP Mens: No, uh, definitely not. Um, if you wanted to start with, uh, own tracks, the first thing that you would have to do, or that I would recommend you do is set up.

Some sort of backend. So you have two possibilities. Possibility number one is you have some HTTP server somewhere. It's maybe an Apache or an Nginx or whatever or PHP. It doesn't really matter, yeah? It could be Python. It could be Java. Whatever you want. Some HTTP endpoint which is able to get the data.

Uh, of the phone. Yeah, so the phone is going to via HTTP perform an HTTP post to your HTTP endpoint. And, uh, you can then get the data. You have the JSON blob. You can parse the JSON blob and do whatever you like with it. Alternatively, That would be my personal recommendation, is you would set up, uh, preferably, obviously, your own MQTT broker.

There are a number of different platforms. One excellent piece of software is, um, Mosquito with a double T. Written by Roger Light. It's written in C, extremely performant, extremely capable, has access control lists and TLS and, and you name it really, it's very, very versatile. But there are others. If you prefer something in Java, there's HiveMQ for instance.

So you need an MQTT server, which you set up and of course you lock it on as strongly as you wish. And then after you've done either the one or the other, then you download the app and configure the app to speak either MQTT or HTTP to the backend that you have set up. Now, this need not necessarily be yourself.

So, let us assume, um, that Jonathan and yourself wished to do this together. You both could set up one MQTT broker, and via access control list on that MQTT broker, you could, well, one of you, whoever is the manager of it, whoever is the system administrator of it, would define, um, Which of the two users can access my information and From there, we get to the topic of what we call friends.

So, um, the OnTracks apps permit me to see on my phone. I think I have 10, 10 people, uh, permit me to see friends. So these are, uh, acquaintances, friends of people. Mine who use own tracks, use own tracks with the same MQTT broker. They permit me to see their location. I permit them to see my location. So on our devices, we see each other where we are on the map and the address.

And when the, when the ping was last or when the post was the last published, et cetera.

Jonathan Bennett: So I I'm, I'm super curious when you use. The HTTP backend. Um, does that completely replace MQTT or do you still also have MQTT running? Uh, between the two. No,

JP Mens: it can completely replace MQTT. However, um, certain things are more difficult or more complex to set up.

So, for instance, this whole topic of friends is more difficult to, more difficult to set up. You need to do a lot more on the back end problem, yeah? Okay. But, um, No, it is a complete replacement. Okay. Now,

Jonathan Bennett: can you, can you do it both ways? Can you have, you know, an HTTP endpoint that then just forwards off to your MQTT server?

JP Mens: Yes, of course. Okay. Of course, that is, that is certainly possible. So you would have an endpoint, which you write in any programming language you want. And that can, that would obtain or that would get the HTTP post with the JSON blob in it. And, um, then your software would publish that somewhere else. For instance, over MQTT or AMQP or send it off by email or, uh, transmit it to your MeshTastic thing to have it transmitted by radio to some other endpoint.

Any number of, any number of, any number of crazy combinations are possible. Sure.

Jeff Massie: Well, just to kind of continue on with that. So, okay. Jonathan and I are friends. You know, we're set up so we can see each other's location and I go on a motorcycle ride that I think Jonathan should see now. How, how would I share that specific trip with

JP Mens: him that he should or should not see that he should,

Jeff Massie: that he should see?

I'll say, John, Jonathan, this is a great trip. You ought to see the sights. Follow this route.

JP Mens: Yeah, if Jonathan and you are friends, then basically you do not need to do anything, because Jonathan at any moment will see where you are. So, let us assume Jonathan kept his smartphone on, or his backend software on, he could follow you as you ride along.

Um, I think what you mean, or I'm going to interpret what you, what you said, slightly differently. Let us assume you both are friends on a single server, and you would like to show your family member, I don't know, I'm imagining a sister or a brother, anybody, aunt, uncle, doesn't matter. You would like to show your family member your trip.

Now, you wish to So, um, you wish to have them see your trip, however, you do not wish to give them access or unfettered access to wherever you are. So you can set up what we call a tour. And that is, you define that you're going on a trip. Leaving Monday morning, 8:00 AM and returning Friday at 1700. And you define that trip, you set it up and that's again, like a bit of adjacent, you could do that on the app itself.

Um, currently only in iOS, but you do that on, on the app itself. And we store that on the backend. And that trip gets, um, uh, U-U-I-D-G-U-U-I-D. You can then share that GUUID to, for instance, your sister, and she can at any moment, uh, see the track that you have created from Monday morning, 8am it was, till Friday afternoon, 17pm.

And, for instance, after your return, You go on another trip, but you don't want to see her. She will not be able to see that data. She only sees the trip within the time constraints that you have specified.

Jeff Massie: Okay. Yeah, that's what I, you, you interpreted that correctly because, you know, if somebody who's just watching me, there's going to be a heck of a lot of, you know, going back and forth to work and a lot of, you know, kind of.

Me to the grocery store kind of things and not, uh. Specifically being able to call that out, you know, here's the trip I want you to see now Can you with that person then if they wanted to follow my footsteps would they could they load that into like a? Google Maps or a base camp or a

JP Mens: In theory, yes. If they were knowledgeable enough to get the data, they would be able to access the data.

Um, we publish that as GeoJSON. And yes, you can load that into Google Maps or export it as KML or as, uh, what is the other called? GPX or as comma separated values. So we have a whole, um, a utility which is able to Uh, export those data in a number of different formats, but they would only see the data. And that's the important part.

No, they would only see the data for that specific timeframe. Right. Yep. Yep. Perfect. We also have, this was, I'm not sure how to politically correctly express this. So I'm going to be very, very careful and I'm going to start off by using the German term. We also have. Somebody who many years ago said, well, supposing I have own tracks, and my wife has own tracks.

And supposing I go somewhere, and I don't want my wife to see where I am. And then I said, okay, this is the beginning of what we will call the Puff Schalter. Schalter means switch. And, um, Well, can you imagine what the word poof means? Anyway, it doesn't matter what it means. Um, the place that you don't want your spouse to know that you've been, okay?

Um, and so you can, on the app, you can say we want now in what we call quiet mode. We want please, um, Jeff does not want his friends to see where he is at the moment because he's going to 7 Eleven or whatever to a liquor store. It doesn't matter where he's going. And upon leaving that location, Jeff could then switch off that quiet mode again.

And then, for instance, his friend Jonathan would see where he is. Yeah.

Jonathan Bennett: So I'm, I'm curious if there is a way to do that kind of the other way around. So, so we'll just, we'll just throw out our kind of a real life example. Jeff and I have talked about, because Jeff is way up in the, uh, in the north side of the country, and I'm down kind of south central.

So we've got hundreds and hundreds of miles between us. We've talked about trying to get together, and Jeff may be coming as a motorcycle ride. And it's like, well It would be nice for me to be able to keep track of him on that ride. Let's say something happens and he needs pickup or help, you know, so I can I can just imagine that for that particular trip That would be great to be able to keep tracking him on the way down, but I don't need to see Anything else about where Jeff goes?

I don't need to be able to watch him go to work or back. So is there, how would you do that? Would you make someone a friend just for the trip and then revoke the friendship? Or does that give access to all of your points? How does that part work? No, no, no.

JP Mens: Technically you could do that, but that's something that, um That is something that you probably wouldn't want to do.

Now, assuming Jeff has his own MQTT broker, and you have your own MQTT broker, then your IO, sorry, your OnTracks app is connected with your broker. Jeff's app is connected to his broker. You can From our point of view, you can no longer become friends. These two brokers would need to be bridged together in order to provide some sort of a friendship system.

Okay. So friends. Only work, um, friends today only work when we are connected to the same infrastructure. One of the disadvantages of not having a central

Jonathan Bennett: system. The Onetrax backend does not know about the Fediverse. Yes, exactly, exactly, exactly. I don't, oh goodness, I don't know if that would even be possible to make work, but that would be, that would be pretty cool if you could.

Make it sort of Fediverse enabled.

JP Mens: Sorry, somebody's drilling here somewhere. I'm holding my mouse on the mute button. Indeed, we can, uh, Well, technically we could actually federate, somewhat federate MQTT servers, MQTT brokers. But that will be today beyond the scope of what Umtrax

Jonathan Bennett: is. Sure. That that's that's the sort of thing where you would want some company that really really or some Individual that really really wants the feature to come and actually pay you money to develop it

JP Mens: Yes, um, although what you just said is not uninteresting um thinking fediverse and um

Jonathan Bennett: Well,

Jeff Massie: based on history, what you've been telling us, it sounds like that's, that might be a couple hour project.

JP Mens: I hope not because it's very painful. Um, that might be something, um, that, that might actually be something that we could think about. I, my imagination is a. Bit on the freeze

Jonathan Bennett: now. Yes, it's always fun doing one of these interviews when you ask a question or make a statement and you just, you see the wheels start turning in the guest's mind.

Exactly.

JP Mens: I've got a block here and I'm making notes. So, yeah, stay tuned.

Jonathan Bennett: So, one of the other things I wanted to ask about is the GitHub repo, like the project as a whole, How much interaction do you get? Like, how many people have come and starred it? How many people have come and forked it? And do you, do you regularly get, uh, pull requests from kind of the greater community?

JP Mens: Um, I do not keep track of the number of stars. We have a, we have a GitHub organization called OwnTracks. So GitHub. org slash OwnTracks. And then therein are the different repositories for the iOS app, for the Android app, for the backend, for the frontend Um, and yes, there are occasionally, uh, pull requests.

I noticed one recently for one of the Android components. Um, there are, of course, people who submit issues. Uh, today I think we got two or three issues, uh, over, over the, over the board. Um, sometimes for the iOS app, or for the Android app, or for the backend, or we have a repository called Talk where people can ask questions and sort of begin or initiate some sort of a discussion.

Um, Yes, there's, there's a bit of, there's a bit of interaction. Absolutely. Um, I wouldn't say a lot, but certainly it's there. So not, I'm not quite sure whether I've actually answered your question. No,

Jonathan Bennett: no. Uh, I think that's a great answer. I will, I will actually give a little bit more information because I'm sitting here looking at your GitHub repo.

So the actual recorder bit, which is kind of the core of own tracks, uh, 731 stars, 111 forks, and you have 37 different contributors, which. I've got to say, that moves you out of the little tiny small time project, uh, demographic. This, you actually, it's actually pretty impressive, the amount of community interest and the community, um, Well, the community you've built around OwnTracks, it's impressive.

JP Mens: Um, yes, to a certain extent, it is impressive. Um, I just see that Christoph is telling me 300 stars for iOS, for instance, 1200 stars for Android. Mm hmm. So, yes, there are people who interact with us. I would like to slightly correct, only very slightly correct what you said. You said the recorder is like a central component, like a central, sort of, yeah, central instance for OnTracks.

That is only partially true because the back end is eminently replaceable. So, once again, if you Ah, fair. Let us say you and Jeff set up OnTracks against your MQTT broker and you look at the record and say, yeah, well, that's all very fine and so on. But we don't trust all the C code. We don't want this. We want to do our own stuff.

Yeah, then you could here again, uh, write. probably trivial amount of code. Um, if you're so desired, you subscribe to your own MQTT broker, you get the messages, extract your latitude, longitude, address, whatever you want to extract, and dump that into the database and visualize that somehow. So our recorder is A possible back end, but it's not necessarily the back end.

Okay,

Jonathan Bennett: that's, that's fair. So I may, I misunderstood something when I first started using OwnTracks. I think we ought to cover it here because it might help people out. You've got, you've got a web interface, if I remember correctly, that's part of the recorder to where you can go in and look at data. But that is not the preferred, um, front end.

For own tracks. Is it, is there, there's a, there's another component there. You have

JP Mens: managed, you have managed to shame me that, uh, that, um, that web interface on the recorder is. Or might I say was, no, is my best effort at trying to get data onto the screen. I did, I love programming on C and in real languages, I detest anything that is web.

Um, although there's one, I don't know if you saw this, Table is a table of live devices. Now that is really, really sexy in my opinion, particularly if you have a whole bunch of friends, because then you see, you really, you see the move and going from one country to another, that's really quite sexy, but, um, indeed the recorder is basically our, our data storage system, uh, the recorder.

Also records, if you so desire, reverse geo positions, which are stored locally and also cached locally. And the recorder provides an API, a REST API, with which a client can consume location data. And, uh, our preferred Frontend is the project that we call OnTrack slash Frontend with a capital F. Um, that was written by Linus Groh.

And that is a really, really nice, um, track visualization thing. You can select users, you can select devices per user. You can say, I'd like to see where Did my friend Jeff travel from Monday at five at 8 a. m. till Friday at 1700 p. m. Um, and then you get the track drawn, uh, drawn at you. Yeah, so that is really, really sexy.

Jonathan Bennett: Yes, um, it, it is, it is very nice. Now, there are, as, as a user, there are some features that I would love to see in there. And in fact, there's already, there's an open request and somebody already has a fork where they're working on it. Um, and so I guess let me ask this question to kind of hone in on this thought.

Where, where does OwnTracks need help? Like if somebody said, I love this project, I'd love to jump in and do some programming. Where would you point them at that, uh, the project could use, say, another,

JP Mens: another programmer? Where were you when I said billion dollars?

Where do we need help? That's actually an interesting question. We, we probably need help all over the place, or maybe we don't need help, but we could certainly use help. So for instance, there are a number of ideas on the front end that, um, are awaiting implementation. There's work that Could certainly be done on the Android app together with, um, Andrew.

There's maybe also work that could be done on the iOS app, although I can't think of any feature that's not yet being implemented there. Um, so where we also need help. Well. Yes, we need help. More time, uh, would be for me to rewrite the documentation or something that I've been promising to do now for, I don't know, two years or something.

Our documentation used to be very good, but it's meanwhile, I think just too complex. People are wanting a more point and click documentation, something simpler, something getting started quickly. Yeah, and I've been, uh, I've been promising to do that for quite some time now. So. Um, that, those are basically the, the, the, the, uh, the, the topics that we could certainly use help for.

Now

Jeff Massie: I, I kind of want to expand on that a little bit, but first step back just a moment and say, so you're talking about interfacing with your database basically. Now can you, now that's for the PC or is this everything done on the phone for your, uh, like your web and your. Preferred, uh, back end.

JP Mens: Ummmmmmmmmmmmmmmmmmmmmmmmm If I correctly understand your question, no, no, the phone, our smartphone apps today have a map which visualizes, which shows where the friends are and where you are. They are in charge of publishing location data every so and so often. They are in charge of publishing transition events when you leave or enter a geofence.

But that is basically more or less it. Um, everything else occurs on the backend. So, the data is stored somewhere. The data is then pulled out via the, for instance, the recorder API and then visualized in the frontend. That all happens. I think you said PC side, I would call it server side. So on the, on the backend, yep.

Um, but I'm not quite sure Jeff, whether I've answered your question.

Jeff Massie: No, you, you did because I, you know, sometimes I, at least personally, I find. Phone apps, sometimes if you have a large set of data, it can be hard to navigate around versus working on a server or something like that, where I have a bigger screen and a mouse to

JP Mens: Definitely.

Definitely. Our apps have not been designed with that type of manipulation. in mind. Um, there is an idea for the Android app, uh, on maybe being able to display historic data on the, on the device. So in the application itself. Um, but I do not see that happening within very short time.

Jeff Massie: What, what features do you have on the roadmap for your Android and

JP Mens: iOS?

There are a number of things that we have. First of all, for the iOS, we are working at the moment with so called points of interest. So you can, when you are on the road, this is probably also going to happen on Android. We, we try, it's difficult of course, but we try to keep feature parity if possible. Um, so.

When you're on the road and you're sitting in a lovely cafe, you think hey, this is, I want to remember the name of this cafe and that I had, I don't know, a fantastic cup of chai here. You can add a so called point of interest. This, this text is transmitted along with our JSON payload and stored of course in the backend database.

And we will be visualizing this, we do that already on the iOS map. So, in, in app, um, and, um, I made a request yesterday that, that this feature is also added to the front end. And, um, today actually I committed, um, code which allows our recorder to automatically produce a, um, A GeoJSON dump of these, um, points of interest.

So those are things, that is something we're working on. We've been working with tours. We, uh, want to increase or, or enhance the possibility of doing. Remote configuration and also locked mode on both Android and iOS. So, for instance, um, Jonathan has set up an Android or an iPhone app with own tracks for maybe a family member.

And that family member has nothing better to do all day long than to muck about with some settings. And Jonathan doesn't want that. First of all, it's a pain in the ass. But, uh, second of all, it causes extra support requests, so he wants to lock down that device. So this will be possible. Um, we, uh, are adding logs at the moment, so more better and better logging on the iOS end.

This has already existed for a number of years on the Android end. Um, on Android we want to implement also tools that we have, like your motorbike tool, that we also have on iOS. Um, Andrew wants to implement a so called waypoint picker which will allow to create a waypoint or what we call a geofence directly from a map, which today is not possible.

You have to enter latitude and longitude. Um, Android is tedious keeping up with the, um, with the Google Play Store policies and all the work it generates. That's, that's quite tedious. And, um, What is also tedious and requires a lot of work is testing on real devices because all these Android devices are just different.

So certain things work on the Samsung A, but they don't work on the whatever, uh, B version. So this is, uh, this is a bit difficult. So these are things that are coming. Yeah. To a store near you. Sometime.

Jonathan Bennett: Awesome.

Jeff Massie: Now, so getting to the point you're at now, what are some of the, the harder pieces that you've had to work around or what would have been some challenges getting just to this point that You've had difficulty

JP Mens: with?

Yeah, that's a very good question. We've had a number of challenges. It started off with battery churn. I remember quite fondly, well, maybe not so fondly, that roughly nine years ago, Um, I was several hours late to a client because the evening before I'd installed the newest iOS version and the battery was drained within an hour.

So I didn't get my wake up call. Yeah. So, um, these are things that we've been working that have been tedious to, to test, um, Then what has been, yeah, a lot of work in the past now, not so much anymore, of course, but is testing. So I, uh, drove thousands, and I'm not joking, thousands of kilometers, uh, or miles if you prefer, it doesn't really matter, um, for testing, uh, these apps.

And, uh, I know that Christopher Henson's walked, uh, Probably hundreds of kilometers in and out of regions testing, um, transitioning events and things like that. So that has, that has been quite, um, quite challenging. Um, but I think my favorite challenge, although it wasn't my challenge, but my favorite issue was a chap who created an iOS issue.

Number 388, if you want to look at it, which if I recall correctly, and I'm paraphrasing slightly the title is significant mode not happening at 800 kilometers per hour. Now that's 500 miles per hour. It's a pilot. We were, this, this was a chap, I think he was called Neil. Um, this was a chap, I think he's Australian or New Zealand, I can't remember, somewhere down under.

And we were in contact with him anyway by mail because he had asked all sorts of questions. A really nice chap. And I wrote to him and I said, WTF, what the hell do you mean by 800 kilometers per hour? Are you crazy or something? He said, no, I'm a fighter pilot. And I take own tracks on iOS along with me in the cockpit.

And I noticed that at 800 kilometers per hour, this display is not updating correctly. And that's why I wanted to, that's why I submitted that bug report. So, um, yeah, that's really, to date, my absolute favorite ticket.

Jonathan Bennett: That's great. I like that a lot. So I, before we let you go, I want to make sure and ask, um, how difficult is this to actually deploy?

Uh, is, is the, uh, you know, the recorder in the front end, is all of that dockerized? Is there an easy MQTT docker? Um, for, for someone that knows their way a little bit around, uh, you know, a Unix command line, how challenging is this actually to get started?

JP Mens: It, I think for somebody who knows their way roughly through the Docker world, I think it is quite doable.

Uh, to answer your question, yes, um, our stuff is Dockerized, so we have the recorder as a Docker container, we have frontend as a Docker container. Um, What we don't have today, and that's my fault, there's no question about it, is an easy setup guide to get somebody started sort of with, I don't know, 27 commands, to set up the backend infrastructure to get themselves going.

That we don't have today. But if somebody is willing today to churn for an hour through documentation, they will, I think, relatively easily kept themselves going.

Jonathan Bennett: Yeah Honestly, I don't think it's even 27 commands. I've I've done the install a couple of times I've been I've written about a little bit here on hackaday I it for for someone that understands how docker works and is not afraid of the command line It's it's pretty easy to get set up.

Don't don't let Don't let jp's uh modesty there scare you away. It's it's pretty trivial to get going if you're familiar with with the linux command line

JP Mens: Yes I I do not disagree jonathan, of course, but um Let's also please not forget that there is quite a bit to know about Docker and how it works.

It's how to set up variables and things like that. So it is a little bit daunting and I do still want to, and it will happen. I just don't know in what century. Although if you look at my hair, I have to hurry up because I'm getting older. Um, I do really want to create an easy setup guide. Um, and. Yeah, it's, it's in the works.

Jonathan Bennett: I, I would, um, honestly, for getting people started very easily, I would honestly say, just write a little docker compose file, and boy, you could get that down to probably two or three commands and have, be able to have people up and running.

JP Mens: Yes, I think in our, uh, there's a repository called ontrackslash Docker dash recorder, I think it's called, um, there is indeed a docker compose file, which is exactly that.

All right. Um, but, but even so, I'm sorry, even so I have to say, um, just because I can launch a docker container or a bunch of containers does not mean that the whole thing works. Let's please not forget that this. App on the smartphone must be able to find that Docker container. So we're talking TNS, we're talking IP addresses, we're talking firewalls, we're talking TLS certificates and, and that it, it does all add

Jonathan Bennett: up.

This is, this is true. I, there, there were some of these things that I figured out so long ago and that I've set up on my own network so long ago I kind of forget that they still exist, I suppose. That is fair.

JP Mens: And, and I think that probably, that probably applies to most of us here. Uh, but for somebody who's really, um.

Non technical, I don't know if that's a word, but it, it can all be rather daunting.

Jonathan Bennett: Sure, sure. Okay, so in, in light of that, let's say somebody needs a little bit of help. Or on the other side of it, somebody knows what they're doing and wants to volunteer to help test the beta version of, let's say, the Android app.

Uh, where, where should people go to sort of get connected and

JP Mens: learn more? Oh, definitely to our respective repository. So for instance, when Christoph publishes a new version, uh, to which fixes some bugs that somebody has reported, um, he gives these people, um, access to test flight and they can then test a preliminary version.

Likewise, Andrew does the same thing. It's not called test flight, but Andrew does the same thing for Android. So, um, We, when somebody reports an issue and when we request them to test in, I think, most cases or all cases, they then actually go to the trouble to really then test the stuff for us and say, yeah, it's okay.

And then we deploy it.

Jonathan Bennett: All right. Is there, is there a discord or a Slack server somewhere where people can come and chat live?

JP Mens: No. Uh, no, we, I don't, no, no, and it's not going to happen, that is not going to happen. That, that will happen, that will happen when Facebook buys us. Um, no, that, no, it's really not going to happen because, uh, let's please not forget, some of us have, have real jobs.

Sure. And we want to at least pretend that we have real jobs. And no, we just can't offer that kind of interaction. Sure. That's why. We have, uh, issue trackers for the individual components and we try to answer very quickly. Uh, I think this morning I answered something in five minutes or six minutes. Um, and, uh, no, no, that is, uh, that is excitement enough for us.

Jonathan Bennett: That is, you know, that's, that's understandable. Um, it. That's very understandable. So getting towards the end of the show, in just a second I'm going to ask you if there's anything that we didn't cover that you wanted to, but I know that's some set math in your head and that takes a minute to figure out.

So I'll ask you a different question first, and that is, what's the weirdest thing that someone has done with own tracks? What's the thing that most surprised you?

JP Mens: Weirdest? That's an interesting question.

Oh, I don't think I can answer that question. And also, please, again, and as always, because we don't really know what people do, unless they tell us. Yeah, right, right, right. Trying to do this and this and we can't. What's the weirdest? Well, maybe, maybe our friend Neil or Nigel, I think. Who, uh, who took, um, own tracks up in his fighter, um, in his fighter plane.

Um, there are, uh, yeah, Christopher's, uh, souffling to me. There have been Well, it's not really weird, but there have been people who were doing, I think, a marathon or something similar who did 10 rounds around the Arc de Triomphe in Paris. And they were carrying, I think, Android or an iOS phone with them, and they wanted to record that.

So that was Yeah, quite, quite interesting. I wouldn't say weird, but it's quite interesting. Um, probably on the weird level, we'll probably have to talk to the people who do, um, who do home automation. Yeah,

Jonathan Bennett: that makes sense. Alright, so, and then I warned you this was coming. Was there anything that we didn't cover that you really wanted to let folks know about?

JP Mens: No, I don't think so. I think your questions were very good and thank you for that. Maybe one thing, um, and that is, or a couple, a couple of points, uh, interestingly, and you mentioned that earlier, uh, you said that there's an integral, um, integration with home assistance, for instance, or, uh, with Whoopi Tatt and so on.

Uh, we find it, I would say interesting for lack of a better word or a more politically correct word. Um, We find it interesting that some of these people have done OnTrack's integrations, but have never told us about it. So, we know, and we get requests from people who say, Uh, it doesn't work with my Home Assistant, or it doesn't work with my this, or it doesn't work with my Life360, or whatever it doesn't work with.

And we can basically only answer, Yeah, well, I'm sorry, you have to go somewhere else, because that's not us that will do this in these integrations. So that is, that is a bit sad. And what's also a bit sad is occasionally, it's happened three or four times in the past that we've had issues raised on one of our trackers for a particular feature, which, and I quote, my customers want to have, end quote.

Now, that's very interesting. If you have customers who are using Onetrax and by customer I associate payment and we're not getting any of that payment, then I feel quite

Jonathan Bennett: disappointed. Yeah, that, uh, that's, well, that's kind of the, the, the continual, the always ever present, um, challenge of open source.

Right, is how you actually get some of the payment to the developers doing the work. Yeah,

JP Mens: and it's not, it's not, it's not, I mean, I don't think we are greedy. I think we've demonstrated over almost 10 years now. I think June is 10 years. Um, we've demonstrated for 10 years that we have done all this free of charge and you're welcome to use it and we're glad that you use it.

And if you, if you, if you pat us on the back once in a while, then we think, Hey, that's cool. Um, so we, we, we don't, we don't really want the money. But if you say my customers, then please at least spend five minutes telling us what that is and what you're doing and why you're doing it and how we could maybe even help, even if it's possibly free of charge.

Sure.

Jeff Massie: Well, is there a donate button or anything or buy you a coffee kind of button?

JP Mens: Yes, not coffee because I already drink too much coffee. I've switched to a gin and tonic now this evening because

The proof is there's no lemon or lime in it, so it must be water. So, yes, we have a donate button. and I think my accumulated income at the moment is 1. 69 per month. Um, so, yes, thank you very much. Um, and that buys us One and a half coffees every two months.

Jonathan Bennett: Oh, come on, come on folks, jump on board.

JP Mens: No, no, I'm not, I'm not, but please don't get me wrong. I'm certainly not complaining, okay? And I'm far from begging. That's not the point of this whole thing. Sure,

Jonathan Bennett: sure. I imagine what you would be more interested in is when someone comes along and says, Hey, I'm using this, I've got paying customers, I would like this feature.

I imagine it would be nice to say, I will contract you to add this feature. Like that, that's always nice when that happens.

JP Mens: Yes, it has happened I think once or twice where people said, yeah, I would be willing to pay. Um, but then it sort of more or less petered

Jonathan Bennett: out. Yep, yep, understood. Alright, I've got to ask you two final questions.

I get emails about it if I forget to ask them. And that is, what's your favorite text editor and scripting language?

JP Mens: Um, well, my favorite text editor is unfortunately VI because I, I'm just, I'm an old fart and I can't do anything else in my next life. I'll do Emacs, but other than that, it's VI. It's in my muscles.

I know VI by heart. I set my command line to VI mode, of course, obviously. Um, so that's, that's what I use. And, um, I'm horrendously, um, I'm horrendously unhappy if you give me anything else, even though there are many wonderful things, uh, wonderful code editors in the world today, but I just can only do VI.

And scripting language, you said, um, Programming language, I would have to say C. Uh, scripting language, today I would probably say Python.

Jonathan Bennett: That is fair enough. All right, sir. Hey, it is, uh, it is past the bottom of the hour now, and we started a little bit early, so we are, we definitely got a full interview in.

I want to say thank you so much, JP, for being here. It has been a pleasure and a delight to talk to you and to learn more about OwnTracks. Thank you, sir.

JP Mens: Thank you very much, both of you, for your very good questions and it was a pleasure being with you today.

Jonathan Bennett: All right, hopefully we will bring you back again at some point in the future.

We can talk about what has changed. All right, Jeff, what do you think?

Jeff Massie: I think this is, this is pretty awesome software. I like the ability to, you know, record and stuff and, and keep it out of, you know, I guess big corporate hands, at least, at least somewhat, you know, they're going to have to work a little harder for it to figure it all out.

And, you know, being able to send. Uh, it's a good way to, to just send trips or something, or, you know, cause, cause like I said, where I ride motorcycles, there's a lot of times where, oh, we took this trip to wherever and you can see this waterfall or monument or whatever, and okay, here, here's the route to take.

And then you can share it with people and let them, uh, see what you've been doing and I, and I like that. It's not, you know, it's open source is always good, right? You know, it's. More control, less, Oh, Google killed

Jonathan Bennett: it. Well, that's, that's one of the things that I like about, about this one in particular. Um, so I, I think of, I think of kind of the, the location tracking for, for one thing I do, I use it for business to be able to keep track of where we've done work throughout the month.

But one of the other things where it makes sense for me is kind of a safety. Um, You know, being, being able to track someone where they're at, whether it's on a hike or on a long drive and being able to have, you know, okay, this is the last point they were at. I know they were traveling at this speed and suddenly they fell off the map and I haven't heard from them in a few hours.

Well, if I need to go check on somebody, I've got that data. And so that kind of makes sense to me from, from even like a, a, a safety standpoint and the fact that it works without having to rely on. Google systems being up or, you know, it's, it's not sending things to Amazon AWS. You can host it yourself that that's kind of a big win for me.

Um, and then, you know, you can, if you really want to do the work, you can do this totally off grid. It generally works over internet, but you can make it work over wifi. Uh, you can make it work over other radio systems. If you. Again, if you put the work in to do it. So, I just, I love the fact that it's so, um, it's modularized.

The way that they've built it. You can build out your own system just using some of the pieces that they have if you want. And so, I enjoy that. A lot of things are really neat.

Jeff Massie: I use right now Life360 for my kids. Just to keep track of them and you know they're selling that data. I'm sure they are. And this would be a totally good uh, replacement for that to where.

Okay, and, and I don't get all the, the spam built into that app, you know, it just, it does what I want and it's, you know, yeah, there's a little, little bit of work, set it up, but after that, then it's nice and clean and no, uh, no

Jonathan Bennett: advertisements. I think, I think we may have talked Jeff into setting up his own little own track server.

So that makes me happy.

Jeff Massie: I, I'm, I'm going to look in, I'm going to actually look and see. If I can get this done and see what it takes and, and I'm, I don't know Docker. I'm not a, I, for those that don't know me, I'm much more proficient on the hardware side. I work in the semiconductor industry, so I can, and I've been a Linux user for many years, so I know the command line, but I am not a.

networking administrator expert by any means.

Jonathan Bennett: Well, you, you know, some people you can come to and ask questions if you run into any problems. And that I do.

Jeff Massie: Yes. I've got Jonathan on speed dial.

Jonathan Bennett: There you go. All right. So next week we're going to have Tony Zioli and he's going to talk about WordPress plugins, open source plugins, and then free and open broadcasting.

That's going to be really fascinating to talk with him and, uh, our co host next week, the plan is for Doc Searles to be back as a co host. I'm pretty excited to have him back on the show and, uh, he's going to, he's going to slot in where it makes sense. Still definitely a friend of the show. Um, so looking forward to that.

Um, Jeff, do you have anything you want to plug before we close?

Jeff Massie: Uh, just catch me and Jonathan over on the Untitled Linux show on the Twit Network and, uh, always, always happy to have you over there as well. And I, and I really appreciate the, being able to. Step into Floss Weekly, been a long time listener, you know, first time co host and I really enjoyed it.

I had a lot of fun

Jonathan Bennett: and really appreciate it. Oh, yeah No, it was great to have you here. I appreciate it as well. All right, you can follow my work At, well, on Twit, the Untitled Linux show that's part of Club Twit, but also at Hackaday. Do the security column, goes live every Friday, as well as Floss Weekly, of course.

Uh, and then one more thing that I'll plug, hopefully I don't have to plug this for very long. I've got a, I've got a buddy that is a programmer. Uh, C, C pretty much anything you want to throw at him, he can manage. And, uh, one of his specialties is Android systems bring up and he is between jobs right now And he's starting to have to think real hard about what he's going to do to be able to keep the house So he is he is looking for something if that is a if that is a piece of your organization that you need Get a hold of me and I can put you in contact with him.

Great guy That is the main thing that I want to plug this week and we will see you next week on floss weekly

Kategorier
Förekommer på
00:00 -00:00