Artsy Engineering Radio
Artsy Engineering Radio
Whatchu working on (on the side): Buddies by Angela Patrinou
Pavlos Vinieratos talks with Angela Patrinou (a fellow Greek), about Angela's mobile app. It's called Buddies, and it's about finding friends around the city you just moved into!
We discuss how the idea came about, how the development went, the launch, and a bunch more.
Join us for the first episode of Whatchu working on (on the side), on Artsy Engineering Radio. More to come!
Hello, hello. Welcome to another episode of Artsy Engineering Radio. My name is Pavlos Vinieratos, today I'm the host, and I'm here with Angela Patrinou, you wanna say hi?
Angela Patrinou:Hello, Pavlos. Thanks for having me.
Pavlos Vinieratos:Hello hello. This will be another episode, the second episode of the"Whatchu working on (on the side)" miniseries of Artsy. And we will talk about an app that you have made, which is called buddies. Do you want to tell us a little bit?
Angela Patrinou:Sure. So buddies is an app for everybody that just moved to a new place, mainly for people that moved later in life. So for work or something like that. And it's pretty much like a dating app for friends, you can find people that share the same interests you share and make new friends this way.
Pavlos Vinieratos:How long has it been released?
Angela Patrinou:It's been released about for about a year, a year and a half, I would say, but it's on trial mode. So only my friends know about it. But since the last couple of months, actually, I'm talking more broadly about it.
Pavlos Vinieratos:Have you used it actually, for, I don't know, like, you know, a day that you're bored, and you want to like find someone to do something or whatever.
Angela Patrinou:So it's hard to find the day that I'm bored lately. It's kind of tricky. But I have used it, I met one guy through my app, which was also into ping pong. And actually Ping Pong was the first inspiration of building buddies. So we did go on a ping pong game together. It was really nice.
Pavlos Vinieratos:Nice, nice. Who won? Do you remember?
Angela Patrinou:I won.
Pavlos Vinieratos:Nice. Is ping pong already, so I know that I was playing around with the app a little bit before and so that there's interests I guess, yes. Is Ping Pong one of them, then?
Angela Patrinou:Of course, the first one. Yes. Other interests you can do is like playing music, or like photography, or I don't know, hiking, or, yeah, a bunch of things. Painting, I think. And of course, we can always add more interest. So if you have something in mind, let me know.
Pavlos Vinieratos:Yeah, that was actually one of the questions that I mean, we're kind of getting immediately into stuff. But it's great. While I was playing, one of the questions that came up was, what about new interests? Like things that are not on your list, basically. Like, could I just add the custom one at some point? And then others could also use it, like appear on their list? Is that what you have in mind?
Angela Patrinou:Ah, not really, like, because so I add, there the things that they hear from people the most, because, you know, I've been working on this app for three years, and there are a lot of things that have come up, but if I hear like the second and the third time I added, but if not, not really. And adding your own interests would be nice. But imagine, for example, ping pong, one could write it with the space one could write it with like, a dash one could write it somehow else so it has to be like kind of
Pavlos Vinieratos:some kind of standardized,
Angela Patrinou:yes. And you add the we add an emoji also, like next to it. So it has to be kind of standard.
Pavlos Vinieratos:Okay. So maybe, yeah, I could see this working as like, everyone can add whatever they want. But no one sees it until like you curate them or something like that. Yeah. Okay, that makes sense. That's cool. So the app basically, just to give like a little overview, I guess of the way it looks right now, is that you have three tabs, right. And the first one is kind of like the settings Profile tab. That was one of the things I wanted to also say I'm really happy that the settings thing was like the first one. I feel like I'm one of the people that whenever I opened a new app or new, you know, whatever, like I just go to the settings first just to see what's up there. So it was really nice to have this as the first one. Even though it was like basically the profile but still. Yeah, and then you can make your profile I guess the with names like interests, photos, blah, blah.
Angela Patrinou:Yeah, you can like to add like a small description about you. You can add your interests. You can find all the links, basically. Oh, and the main link is like buddies-app.com If somebody wants to check it out, you can volunteer if you want. And then the second is like your messages with in the beginning, it's gonna be empty. But then the third one is like all the users. And we've seen that you have like different tabs, depending on the interest that you have. You can see, for example, for me, let's say it's like ping pong and hiking, I would have like, three tabs, one would be all users in my area. And the other one would be like, people who are into ping pong. And the third one would be people that are into hiking. The latest feature that was added, you can now update your focus interests, which was not possible before. Yeah, that's pretty much it.
Pavlos Vinieratos:Nice, OK. You said that people can volunteer. What can they do? Like what's what's the options for volunteering for your app?
Angela Patrinou:So one, that is really funny. So right now I'm making like social media posts. And I don't know if you've seen some of them. But the point is to have like, small, funny posts. So I think that would be the most, like, cute for anybody that just wants to help out like, the know, think of a funny thing. And then we can make a small post about it. But there's a bunch of things from engineering, like, from so many like building it, it takes up a lot of time.
Pavlos Vinieratos:Is it open source?
Angela Patrinou:It is not open source. But if there were a lot of people that wanted to like get involved, it would be open source. Yes. But since Yeah, it's not yet.
Pavlos Vinieratos:OK. Then count me in as one of the people that would like to see it open source for sure. Okay,
Angela Patrinou:so I'm working on this project alone, like the development was also like how I turned from being a web developer to being like an application developer. And it's been like a huge learning opportunity for me, I pretty much like learned so many things with it, and I still keep learning. It's always like, you come across the easiest things in the beginning. And then as you go on, and on and on, it gets harder and harder and harder. Yeah. So like, now, for example, one topic that is really troubling me is like how to save location, because right now I use like, some Google Maps API, and it's returning you like an array of things. But like, the ideal scenario is that you get the cluster. And you can say, I want to see the people that are like five kilometers away. So for example, this is one unsolved thing still. And things like that, that they like bigger problems that I'm trying to think how to solve, like, also, I'm using Firebase. And one idea is like, instead of using serverless, to use, for example, a server basically. So I set up like an EC2 on Amazon anyway, technical things.
Pavlos Vinieratos:No, we are all about technical things here. That's cool. And so when did you when did this start? Like, when did you start the project?
Angela Patrinou:Okay, so the first time I started this project was actually July of 2019. And the first idea it was not bad days, it was ping pong buddies. So you press a button, and you find the people to play like, ping pong with in your neighborhood. The inspiration was because a good friend of mine, we used to play ping pong a lot. And he moved like, he moved to a different city. And I was like, Okay, let's make an app for that. And I actually started building it as a one day challenge. Interesting. Yeah. Then I was like, oh my maybe I need a little bit more. Maybe like one week, one month actually took like a year the first version took a year, and then directly after like ping pong buddies was done. I switch directly to buddies because of course, was an idea that came like soon after. But I felt like if I can do it for one, I can do it also for many. So let's start with one and then we added some more things.
Pavlos Vinieratos:I mean, yeah, that's totally makes sense. It's one of those things where you're like, how hard could it be? But then it's actually very hard because you have to, like, do a bunch of things, a bunch of like technical things, a bunch of non technical things
Angela Patrinou:exactly, e bunch of things that you didn't realize you even needed when you started, you were like, Oh, I'm just gonna do like 1, 2, 3. And then you realize that for this one, you have to break it down into 30. And this 2, you need to break it down.
Pavlos Vinieratos:Right. Do you have any specific expectations? Let's say from this app, like, do you know do you need? Do you expect a specific amount of like money or specific amount of like, a number of people using it or like anything else? Like, is there something that you have as a goal where like, you know, if you pass that or you reach that you're like, nice, like, I have reached my, you know, things I wanted with this app?
Angela Patrinou:Yeah, sure. Like, it's not so much about money or something like that. But it's a project that I would love if it had a similar community that people know about. And like, you know, when you first move somewhere, you know that with buddies, you can find like your new gang. And I would aspire to be something similar to what couchsurfing used to be, which was like a really fun community. Everybody was super happy to talk about it like events, meetups, this that. So yeah, I would aspire something like that.
Pavlos Vinieratos:Yeah, as you said, mostly, now, it's your friends. Right? And then some people outside so I guess, yeah, you have some way to go, but totally on the way there.
Angela Patrinou:Yeah, I would say it's 50/50 right now. So it's been like a couple of months that I've made. I've been making, like some social media posts and people that I don't know appear and I'm like OK who's this person?
Pavlos Vinieratos:Do you track anything of like, do you know if they're coming from like Twitter posts? Or like some sort of randomly found it? Or like, are we tracking any of this?
Angela Patrinou:Actually, I'm not tracking it. That's a great idea, actually. But since I know what I'm doing, like where I'm posting, I guess, depending on when they join, like, where they came from, like, I'm sending most of them messages like, Hey, how did you hear about it?
Pavlos Vinieratos:Are you like,"CEO of buddies over here, any feedback?". Yeah, and I mean, definitely not the most important thing. At this stage of the app right to like, do the tracking. I'm sure there's like, more interesting things that you can solve before the tracking stuff.
Angela Patrinou:Yeah, for sure.
Pavlos Vinieratos:Okay. And one of the questions that I have here is if it's finished, so obviously, this is not finished, right? Like, you're still working on it?
Angela Patrinou:I feel like even if you work on like, like, we work together at Artsy, right? Like, even if it's finished, it's never finished, you can always like, do something more. And based on that, so it's not finished it is, I would say like, the MVP, let's say the minimum viable product is there. But I like I have so many things I could add to it.
Pavlos Vinieratos:What would be the next big thing that you would add, like, give us one, one of your plans? Like what? What's missing now? Yeah.
Angela Patrinou:So one thing I would really love to add there is so right now, buddies is for hobbies. But like when I was working on it, I was looking, for example, for a designer. And finally, I ended up meeting a designer who's now also like my friend, and we work together on the branding. But I wanted to do this in Berlin. And it was like, quite tricky to find someone to work with. So I was thinking it would be really great if you can add, For example, I'm an application developer, and I'm looking for a designer, and then you filter your area and you see find the discipline you're looking for. And you can say for example, I'm like open to new projects. And you can like basically have this kind of professional networking on a, less professional context, let's say,
Pavlos Vinieratos:okay, so less about like having a contract immediately, but more like yeah, interested in the same project. Yes. Okay. That's cool. That makes sense. Yeah. Will be a good next step. I guess not really related to that. Have you? You said you're asking or saying hi to the to the people that you don't know. Like, have you asked for feedback from any of them or any other person or even friends like have you?
Angela Patrinou:Like constantly I'm constantly asking for feedback. And also like many people, just directly come to me with feedback. I think this is great. This is like the best way to move forward right to get some feedback and like,
Pavlos Vinieratos:have you seen like, patterns, I guess or like repeated things or repeated requests or issues or whatever with with them.
Angela Patrinou:One that comes up quite often is like to have this feature for group chat, which is, of course, something I feel like felt about it. But I'm like, this is not the MVP. You can do it but not immediately. So this is like one that comes a lot. One that was coming a lot, also before was to be able to update your focus interests, because like, once you had selected those, you couldn't really change them. But yeah, I've added that. And then smaller things here and there. Yeah, some UI things also are like, yeah,
Pavlos Vinieratos:the groups are totally makes sense. Didn't think of it. But I mean, yeah, even if it's for ping pong, as you said in the beginning, like you could do two v two, right? So you need four people in touch. Yeah, totally makes sense. What has been the most like, interesting, or the most unexpected, like something that you were like, Oh, that was cool. Or
Angela Patrinou:so I will say this story. I was trying to upload a photo for our users, like, you create your profile, and you want to have a photo, right. And it's a complicated process. It's by nature, a complicated process was the
Pavlos Vinieratos:Just choose a hex color. first time I was doing it. And like I was doing this process with this, like four or five steps, you need to break it down into some blobs and like uploaded and then gets there, and you make sure like it's correctly formatted and stuff like that. And it was not working. And I was not working
Angela Patrinou:Exactly. And then like, I move on, you know, at the time. So I was like, full time on buddies. I was spending more than eight hours per day on this topic. I was going through the documentation, I was going through with the some YouTube, I like, forget about for a month, and then after acundefinedundefinedundefinedundefinedundefined month, I'm like, Okay, let's approach this again, like with new eyes, you know, without was going like I was asking people, I was doing everything changing anything, it worked. And then I realized that it was for five days, more than eight hours. And at some point, it was a problem of Firebase, like I was doing the correct process, but something was not working on their end, which was also a huge just not working, like something was getting uploaded, but it was learning process for me, because I was expecting, I'm doing corrupted. And like, I was like, What am I doing wrong? I cannot something wrong. But no, sometimes it's not your fault. Sometimes. It's just another thing. So for me, this was like a huge learning. And it also like taught me not to stick to figure it out. Anyway, after five days, I decided, You know something for too long to like, take a break, come back to it what? Photos are overrated, my users don't need the picture. later. Maybe it's not your fault. Most of the times it is your fault, but sometimes
Pavlos Vinieratos:Sometimes it's good to be like, maybe its not
Angela Patrinou:yeah. Especially with Firebase.
Pavlos Vinieratos:Yeah, that's interesting. Yeah. Wow. Yeah, I'm sure it would have been a frustrating week.
Angela Patrinou:You cannot imagine.
Pavlos Vinieratos:Well, okay. It's good that you didnt give up and we don't just choose a color now. We actually can actually upload an image.
Angela Patrinou:I'm probably gonna switch to Amazon S3, though, because unfortunately, Firebase is not so reliable. But yeah.
Pavlos Vinieratos:Yeah, yeah. It gives you like all the things. But yeah, probably after a point, you can just change to other services that are more focused on the thing that you need. So Does, does Firebase do anything for the geolocation then you said, they're not kind of doing much Right? Or the I guess not Firebase, Maybe just the API from Google Maps you said?.
Angela Patrinou:I'm using the Google Maps API.
Pavlos Vinieratos:Do they have things like like the area like the radius like you said, you know, just like give me from this x and y or like longitude whatever. Like give me you know, three kilometres radius. Like is this a thing that they can do? Or do you have to do it yourself?
Angela Patrinou:I have no idea.
Pavlos Vinieratos:Okay, we need someone to volunteer for this please.
Unknown:Yes, yes.
Pavlos Vinieratos:Okay.
Angela Patrinou:Yeah. It would be nice if they had it. I would also need to think about how to store this information on the database, right? Because like, right now I just find with city the users are based in and I feel like I show them people that are in the same city. But then if you get this cluster back, like how do you save that? Right? So yeah, I have no idea how to do that, basically. And it's exciting to think about it.
Pavlos Vinieratos:Yeah, I'm definitely starting with a city is a good place to start. Yeah. Especially while you don't have like, trillions of users, like city is a big enough bucket, or whatever you want to call it.
Angela Patrinou:Although when you use that API, you don't really get back a city, you get like an array of objects, which have some kind of like, locality thing that Google decided they want to do it like that. And, for example, if you get the fourth place of the array, you get Berlin, but it doesn't work for Athens, for example, you might get the bigger area, like, Attiki.
Pavlos Vinieratos:Ah, they give you like, smaller area within the city and then bigger and then bigger until you get the City, but you don't know.
Angela Patrinou:Right now, I have like Berlin, I have Athens with a different filtering, but they have also like, four and five which are not cities. Stuff like that.
Pavlos Vinieratos:Yeah, maybe they have some like, options to give? Or maybe you just need to keep the whole array. Who knows? Yeah, interesting problem to solve. Let's see, what else do you have any anything that you would like to tell me or everyone listening about The app about anything else related to that? It's out already in both app stores, right, like iOS and Android?
Angela Patrinou:Yes, you can find the links if you go to the webpage so buddies-app.com. You can try it out. You can try to break it. I'm sure it's not gonna take too much time.
Pavlos Vinieratos:I definitely did that. I will send you some bug reports for sure.
Angela Patrinou:Yes, like, if you have any ideas, feel free to like, contribute. If you have ideas for like, funny posts we could make if you want stickers, let me know there are stickers to go around like, mainly in Berlin, and I will keep it in Greece for now. But yeah, who knows where this is next year?
Pavlos Vinieratos:Good. Yeah. Sounds very promising. How often do you work on it? While you're also doing, you know, Artsy work? Like, is it weekends is it whenever you have time.
Angela Patrinou:So it used to be quite a lot the last two years, especially in Corona, like I would spend, you know, I wouldn't really socialize because of the general situation. So it would be like, most of my afternoons and evenings. But now that we are allowed to socialize again, to be honest, like, it's once per two weeks, maybe I spend half a day on development or something like that. But the other thing is that development is like, mostly there, like it works. I mean, it could be better, and there are a lot of things to fix. But yeah, I basically having a full time job and a side project is just too much.
Pavlos Vinieratos:That makes sense.
Angela Patrinou:So but like I keep going back to it, you know, like if there is something that's really annoying, it might take a while, but I will do it eventually. And like what I tried to do now more is talk about it, like, you know, make social media posts maybe once per week, once per 10 days, like Hey, guys, there's this. Yeah, so this kind of work, which is not. Yeah, not called.
Pavlos Vinieratos:Yeah, but still very important. Okay. Cool. Thank you so much. I don't have any more questions. I guess. It's kind of everything. So, yeah, you developed it during Corona, you use it outside Corona. We didn't talk about both of us being Greek and doing this in English. And I'm sure no one will understand from our accents, but OK.
Angela Patrinou:We can put subtitles somehow
Pavlos Vinieratos:the English and the Greek translation of it. Perfect. Thank you so much for for joining this episode
Angela Patrinou:Of course. Thank you so much for having me. Thank you Pavlos.
Steve Hicks:Thanks for listening. You can follow us on Twitter at Artsy open source. Keep up with our blog@artsy.github.io This episode was mixed and edited by Alex Higgins. And thank you Eve Essex for our theme music you can find her on all major streaming platforms. Until next time, this is Artsy Engineering Radio.