WEBVTT

00:00:00.000 --> 00:00:04.880
 it's a psychological trick yeah all of that stuff can be staged and i start to think should we be

00:00:04.880 --> 00:00:12.160
 more professional in how we do our podcast i'm going to do a hard no here

00:00:12.160 --> 00:00:24.800
 hello and welcome to the metacast podcast the best podcast ever the podcast where we discuss

00:00:25.920 --> 00:00:33.440
 how things are going in our company and yeah chat about various things i'm your host ili bestiliff

00:00:33.440 --> 00:00:41.760
 and with me is my co-host arna deka today we are going to talk about software that we use

00:00:41.760 --> 00:00:48.240
 in our company i mean we are a software company we build software but surprise we also use software

00:00:48.240 --> 00:00:55.120
 to build software it's like this inception thing that we are in it's all software all the way down

00:00:55.120 --> 00:01:00.000
 that's why it's called metacast yeah we have a podcast about the podcasting company

00:01:00.000 --> 00:01:06.480
 and we use software to build software so yeah how more meta can it get well i guess we got to get

00:01:06.480 --> 00:01:13.920
 meta verified and then we will be like fully meta you're not fully meta yet okay so what are we going

00:01:13.920 --> 00:01:19.280
 to talk about today yeah we're going to talk about software that we use uh we already talked about

00:01:19.280 --> 00:01:26.080
 subscriptions that we use and we pay for which was i think a pretty interesting episode that was episode

00:01:26.080 --> 00:01:34.000
 like 31 or 32 32 was corey queen it was it must have been 31 yeah and over the last few weeks we've

00:01:34.000 --> 00:01:42.800
 accumulated a lot of scars from using google products now that we are corporate google workers google

00:01:42.800 --> 00:01:49.760
 workspace users yes and ilia has started developing you're doing more and more of the actual development

00:01:49.760 --> 00:01:55.040
 work and you're seeing more and more of it so yeah yeah we've been kind of punting this episode because

00:01:55.040 --> 00:02:02.640
 we were like we are going to experience more bugs from google so let's do it later so now i think we're

00:02:02.640 --> 00:02:08.480
 at this point where i don't think anything google does can surprise us at this point well sort of

00:02:08.480 --> 00:02:16.000
 yeah it depends as we talk through the episode we'll find out where we stand but i think it's not all

00:02:16.000 --> 00:02:23.280
 doom and gloom we would not have been able to build and get it to the hands of our beta customers in this

00:02:23.280 --> 00:02:29.680
 short duration without google i mean absolutely i wouldn't be able to send the white listing email our

00:02:29.680 --> 00:02:35.920
 infrastructure wouldn't run and also our users wouldn't have android phones without google yeah

00:02:35.920 --> 00:02:43.680
 google is a great company it's just um there are some dark corners there yeah and it's gigantic so

00:02:43.680 --> 00:02:48.960
 there is some like seams that don't work with each other anyway we'll get into all that through this

00:02:48.960 --> 00:02:54.720
 episode yeah so first let's start with the things that we are improving this episode and i know you

00:02:54.720 --> 00:02:59.840
 don't have any because you didn't prepare oh i just added one remember well maybe because you didn't

00:02:59.840 --> 00:03:07.920
 prepare so that's the prepare better for the episode no i'm just uh semi-kidding here but the topic i

00:03:07.920 --> 00:03:14.800
 wanted to bring up in terms of improvements i've been thinking about positioning i think we talked about

00:03:14.800 --> 00:03:20.960
 that a little bit last time like x coordinate and y coordinate no the playhead position in audio

00:03:22.960 --> 00:03:30.240
 okay this is getting too inside jokey too meta right now yeah because yeah we were working on

00:03:30.240 --> 00:03:35.680
 some play help position in the app today well i was working and um i don't know what's helping me

00:03:35.680 --> 00:03:40.640
 so i think last time i mentioned that people are thinking we are building a podcasting

00:03:40.640 --> 00:03:47.200
 like studio kind of thing we are building a podcast we had a discussion about this between you and me like

00:03:47.200 --> 00:03:51.920
 last week or something yeah we have it on the recording too uh i think it was in the last episode

00:03:51.920 --> 00:03:57.440
 oh we did okay yeah everything is very meta in my head so yeah so but the other thing i was thinking

00:03:57.440 --> 00:04:04.480
 about is so one thing is just communicating the message very clearly like we are the founders of

00:04:04.480 --> 00:04:13.920
 metacast a delivery c corp building a building a startup whose product is a podcast app that people can

00:04:13.920 --> 00:04:18.480
 use to listen to listen to podcasts obviously this is not the marketing pitch but this is

00:04:18.480 --> 00:04:24.560
 factual statement of what we're working on podcast is our marketing channel right this podcast is our

00:04:24.560 --> 00:04:29.360
 marketing channel exactly yes and in this podcast we talk about how we built the company so we need

00:04:29.360 --> 00:04:35.360
 to make it very clear mostly not on the podcast but on our social media channels and i've been actually

00:04:35.360 --> 00:04:43.840
 using that line at the end of my linkedin posts saying that we are building a podcast app company and yeah

00:04:43.840 --> 00:04:51.680
 follow me for more stuff by the way when when we say marketing channel it sounds very salesy in a

00:04:51.680 --> 00:04:59.360
 negative way i i want to rephrase this to this is more like our community channel right it's a one-way audio

00:04:59.360 --> 00:05:07.360
 community channel where i mean right now the only people who listen to our are like our supporters fans

00:05:07.360 --> 00:05:13.920
 people who really are interested in seeing what we're doing how it's getting built and all that and

00:05:13.920 --> 00:05:23.360
 so it's our one-way audio channel to those people i actually like that because marketing implies that we

00:05:23.360 --> 00:05:30.880
 drive awareness but i feel like it's going to be the other way around this podcast our users will

00:05:30.880 --> 00:05:37.840
 discover the podcast through the app and this will be a user radio that's actually a pretty cool

00:05:37.840 --> 00:05:43.920
 positioning for this so but the positioning i was going to talk about today is i've been watching a lot

00:05:43.920 --> 00:05:53.120
 of expert reels on instagram expert reels expert reels okay i'm sure it's common in the us as well

00:05:53.120 --> 00:05:59.440
 but back home in russia anybody who has sizable audience sizable meaning at least a few thousand

00:05:59.440 --> 00:06:05.520
 people they sell stuff and there are a lot of people selling courses and selling some services

00:06:05.520 --> 00:06:10.480
 i mean i can get it when people like get like a hairdresser sells themselves like as a hairdresser

00:06:10.480 --> 00:06:14.560
 right people come to them because of their social media it's all great but there are lots and

00:06:14.560 --> 00:06:22.640
 lots and lots of people now who have learned how to create reels that drive followers and

00:06:22.880 --> 00:06:27.520
 subscriptions and all that and then they create courses about creating reels and then those reels

00:06:27.520 --> 00:06:32.400
 are about creating reels so that they can sell more of their courses i've been watching a lot of those

00:06:32.400 --> 00:06:37.920
 because they have a lot of useful content useful information for me this is perfect can i just tell

00:06:37.920 --> 00:06:43.120
 you about an incident i just read about it like yesterday so this is almost exactly what you're

00:06:43.120 --> 00:06:51.440
 talking about i was on reddit and i think it was the startups or entrepreneur subreddit and there was a

00:06:51.440 --> 00:06:58.800
 post very bold post right saying like anybody can if they put their mind into it anybody can get two

00:06:58.800 --> 00:07:04.560
 hundred thousand users within a month and so this person posted saying that anybody can do this and

00:07:04.560 --> 00:07:10.720
 i'm going to this is my day one i'm going to post every day on reddit saying how i'm going to get

00:07:10.720 --> 00:07:17.600
 200 000 users a month right through that freaking subreddit that's how they're doing this am i right

00:07:18.240 --> 00:07:26.400
 it was very meta but almost all the comments were exactly that right like after 30 days you'll come

00:07:26.400 --> 00:07:35.040
 back and say this is how to get 100 000 users as a course and post it here oh so but here's an

00:07:35.040 --> 00:07:40.800
 interesting thing there so doing this in public like he's doing or they are doing this person right

00:07:40.800 --> 00:07:48.160
 they're using this reddit thing as also a marketing channel it's a self-reinforcing thing that they're

00:07:48.160 --> 00:07:54.000
 doing well i don't know about self-reinforcing i think that might be the attempt but reddit users

00:07:54.000 --> 00:08:01.120
 are not the right like it's not like instagram right most of the comments in that thread are like

00:08:01.120 --> 00:08:06.480
 i won't say dismissive but they're very cynical and they're seeing through it that you're not

00:08:06.480 --> 00:08:11.680
 going to get 200 000 users in a month by posting every day on reddit you're going to get to it

00:08:11.680 --> 00:08:17.360
 some other way but ultimately what i think not not me the commenters this is the sentiment of the

00:08:17.360 --> 00:08:23.760
 commenters i'm aggregating into my own voice what i think is that after 30 days you're going to come

00:08:23.760 --> 00:08:30.160
 back and sell some sort of an info product showing how to grow to 100 000 users in a month

00:08:30.160 --> 00:08:35.200
 and that itself might be the end goal rather than actually growing some product or anything like

00:08:35.200 --> 00:08:40.160
 that because there was no mention of what product or what they're working on okay that's very

00:08:40.160 --> 00:08:47.120
 interesting okay so the positioning i was thinking about is all of those experts that i'm looking at

00:08:47.120 --> 00:08:54.560
 they have those uh setups where they have lots of great lighting and they have kind of assure sm7b

00:08:54.560 --> 00:09:01.840
 microphone in front of them and they talk really well uh sometimes when they talk averagely still like

00:09:01.840 --> 00:09:09.920
 the setup looks really really good and i was thinking about how much does that affect the perception

00:09:09.920 --> 00:09:15.680
 not by people who watch them regularly because then they can appear in any attire and you will still

00:09:15.680 --> 00:09:22.960
 perceive them like us right now yeah like us right uh yeah i'm in my pajamas right now no pants me too

00:09:22.960 --> 00:09:24.480
 green ones

00:09:24.480 --> 00:09:33.200
 okay but for people who discover them like accidentally let's say instagram recommends it

00:09:33.200 --> 00:09:39.440
 on youtube shorts you just like look at somebody how much more likely would you not swipe away

00:09:40.080 --> 00:09:44.960
 somebody who is looking like me right looking like you like just a t-shirt in the house right

00:09:44.960 --> 00:09:51.120
 absolutely nothing special uh in terms of uh the setup versus somebody who is like sitting at the

00:09:51.120 --> 00:09:56.720
 desk with their microphone and as if they're talking to some or talking to somebody else like like a

00:09:56.720 --> 00:10:00.800
 podcast host and there are other people in the background watching them like a dead dog kind of

00:10:00.800 --> 00:10:05.600
 setup it automatically it is in my head it's like okay so this person has something to say it's a

00:10:05.600 --> 00:10:10.800
 psychological trick yeah all of that stuff can be staged and i start to think should we be more

00:10:10.800 --> 00:10:17.440
 professional in how we do our podcast i'm going to do a hard no here

00:10:17.440 --> 00:10:24.560
 because it just doesn't suit my personality but it's a hard no because i don't like it because i said

00:10:24.560 --> 00:10:32.960
 no no i know that this is the game you have to play nowadays especially if you want to grow

00:10:33.840 --> 00:10:40.240
 engagement from like random users who are seeing you for like 30 seconds right and you need to get

00:10:40.240 --> 00:10:47.920
 those 30 seconds 15 seconds of not even fame 15 seconds of instagram and make it into a follower

00:10:47.920 --> 00:10:52.320
 these are the kind of gimmicks that you have to do maybe i'm very old school in this way

00:10:52.320 --> 00:10:59.840
 i personally don't do things like like i barely ever go search for things in instagram or follow

00:10:59.840 --> 00:11:06.880
 people speaking in instagram most of my instagram and every other social media usage is more like

00:11:06.880 --> 00:11:13.280
 nature hikes tennis things like that maybe i just don't understand the mentality first of all and second

00:11:13.280 --> 00:11:19.920
 i don't think i could do that so it's not like i don't want to do it it's rather i can't do that

00:11:20.800 --> 00:11:26.960
 so ardab how would you feel if we didn't experiment just hypothetically right i'm just trying to like

00:11:26.960 --> 00:11:33.200
 get you transferred to that mindset so let's say next week we are going to a studio i mean each of us

00:11:33.200 --> 00:11:39.440
 goes to studio and we have to wear a formal shirt and a tie just like imagine yourself doing this how

00:11:39.440 --> 00:11:46.320
 would it make you feel okay so before i get to the podcast you already know this and i think you and

00:11:46.320 --> 00:11:53.280
 i are very similar in this maybe that's why you brought it up but my first job i had to wear a tie

00:11:53.280 --> 00:12:00.880
 every day it was a company that ends with sucks yes we were named the company it was a huge company

00:12:00.880 --> 00:12:11.360
 yeah yeah but i had to wear a tie every day that was the first four years three no two and a half

00:12:11.360 --> 00:12:17.600
 years of my professional work and i was like i'm never doing anything where i'm forced to wear a tie

00:12:17.600 --> 00:12:27.280
 again so for a podcast no i i don't know maybe it might be too naive but i don't believe in this

00:12:27.280 --> 00:12:35.920
 sort of engagement and follower kind of mentality i would rather grow 10 connections a year but they're

00:12:35.920 --> 00:12:42.240
 like actually deep connections who care about you who know you and all that rather than like 100 000

00:12:42.240 --> 00:12:48.320
 people who follow you on instagram only for the type of things that you produce in instagram for

00:12:48.320 --> 00:12:55.200
 content for that content for that specific type of content that is why i'm saying content is because

00:12:55.200 --> 00:13:01.600
 it's not even information it's content it's like a special kind of information it's not just the

00:13:01.600 --> 00:13:08.560
 information sometimes there is no information but but it's the presentation and the setup and all that

00:13:08.560 --> 00:13:14.880
 yes it's very engaging i would say yeah but the moment you stop doing that for whatever reason you may

00:13:14.880 --> 00:13:20.000
 decide i've had enough right i don't want to keep doing this you lose all those they're not really

00:13:20.000 --> 00:13:26.640
 connections they're i think the word follower itself is like they're not following you anyway so that was

00:13:26.640 --> 00:13:34.640
 my long long-winded answer to not wearing a tie yeah okay and i think you're very similar so i was uh

00:13:34.640 --> 00:13:40.160
 yeah yeah i think i can bridge a couple of topics right now because a few minutes ago i said back home

00:13:40.160 --> 00:13:46.480
 in russia and it just felt weird and i'll get to why in a moment and also um i think a few episodes

00:13:46.480 --> 00:13:52.320
 ago we were saying how i was about to record from a car actually which didn't happen because we

00:13:52.320 --> 00:13:57.680
 rescheduled and all but i was ready to do that and we'll get to that in a second and also i think in

00:13:57.680 --> 00:14:06.000
 episode six or eight when we talked to any and angela from hearts in taiwan eight or ten yeah i told

00:14:06.000 --> 00:14:12.160
 them i don't feel very american and all that so now you feel very do you now i am very american

00:14:12.160 --> 00:14:20.800
 yeah so that uh time when i had to record from the car i was going for an interview for uscs

00:14:20.800 --> 00:14:25.520
 interview for immigration interview where they asked me about a bunch of questions like who is my us

00:14:25.520 --> 00:14:30.880
 representative and a few other kind of third grade level kind of questions and they tested

00:14:30.880 --> 00:14:38.240
 my english skills and all that this was your citizenship uh us citizenship test yes i passed

00:14:38.240 --> 00:14:48.880
 it yes a plus with flying blue red and white colors yes and then the week afterwards uh yeah i had my

00:14:48.880 --> 00:14:54.000
 ceremony and it actually was a very good ceremony but i had to dress up for that freaking ceremony well

00:14:54.000 --> 00:15:02.080
 actually i bought a shirt and formal pants because i didn't have any for the last 10 years last time

00:15:02.080 --> 00:15:09.920
 i wore pants and a shirt when i was interviewing for an mba program back in the spring of 2013

00:15:09.920 --> 00:15:15.440
 and then when i got my admission letter i'm like screw this i'm gonna throw this all out and because

00:15:15.440 --> 00:15:19.440
 we're also moving internationally to the us i threw all of my formal attire out because like you i was

00:15:19.440 --> 00:15:26.560
 working for another company that ends with express and also a big global brand yes very big global brand

00:15:26.560 --> 00:15:35.280
 yeah and i hated wearing not just ties but actually shorts i don't mind as much what i do hate is pants

00:15:35.280 --> 00:15:42.720
 i find pants uncomfortable and unbeautiful not that i'm very stylish i know i don't wear pants or formal

00:15:42.720 --> 00:15:48.880
 shoes i don't have any yeah but luckily i had formal shoes still that i bought in germany they were some

00:15:48.880 --> 00:15:54.480
 kind of like 200 euro shoes that's supposed to last you all of your life you can get like buried in

00:15:54.480 --> 00:15:59.200
 those shoes if you like don't lose them because they're just such good quality because they're just

00:15:59.200 --> 00:16:05.680
 german made and um you know i didn't want to throw away because they were so expensive so luckily i didn't

00:16:05.680 --> 00:16:10.000
 have to buy the shoes yeah and uh yeah i went for that um in the interview in the ceremony because

00:16:10.000 --> 00:16:15.600
 it's one of those things where you should not anti-position yourself and uh come out like as a

00:16:15.600 --> 00:16:22.240
 slab because then they may have more questions for you you should post the picture of yourself that

00:16:22.240 --> 00:16:29.760
 you showed me that day in the show notes oh maybe the certificate with the flag yeah like you were like

00:16:29.760 --> 00:16:35.840
 clean shaven haircut and everything you look like a different person altogether yeah wearing a shirt

00:16:35.840 --> 00:16:43.360
 and pants look like a normal person yeah but yeah anyway so wearing pants then made me feel like

00:16:43.360 --> 00:16:52.320
 actually not as bad as i expected but you still prefer pajamas yes of course i mean when going out i

00:16:52.320 --> 00:16:57.440
 prefer shorts i have like these soft shorts they're almost like pajama shorts but yeah but i didn't feel

00:16:57.440 --> 00:17:01.600
 as bad i'm like yeah this is just parts of the of the game you know when in rome do as romans do so

00:17:01.600 --> 00:17:07.840
 10 years ago i was a little bit more absolutist in my attire tastes but i really like the shorts by the

00:17:07.840 --> 00:17:13.760
 way so the short actually really felt good so yeah i might buy a short just for some well i guess

00:17:13.760 --> 00:17:18.720
 semi-casual occasions uh so yeah if you want to congratulate me with becoming a us citizen you can

00:17:18.720 --> 00:17:20.320
 leave a five-star review

00:17:20.320 --> 00:17:29.040
 subscribe to our newsletter yeah or reply to the newsletter yeah all of that send ilia a message

00:17:29.040 --> 00:17:36.560
 yeah congrats that's a huge step many many many years in coming awesome yeah 10 years in this country

00:17:36.560 --> 00:17:43.120
 but yeah what was interesting is i was as i exited the ceremony the immigration building i was driving

00:17:43.120 --> 00:17:51.200
 back home and it felt different part of that was the ceremony was so different from border control

00:17:51.200 --> 00:17:56.480
 experience that you get as an immigrant uh where they like they look at you like who are you and when

00:17:56.480 --> 00:18:01.040
 they get the green card they get more polite it becomes normal uh but when you're on the visa it's like

00:18:01.040 --> 00:18:07.120
 a different experience but there they were like you're one of us and then they had this video of biden

00:18:07.120 --> 00:18:13.360
 playing which uh as cheesy as it sounds almost made me tear up but it was a very good video

00:18:13.360 --> 00:18:20.400
 and also there were lots of people there like with families and like lots of supporters i next to me

00:18:20.400 --> 00:18:25.360
 there was a guy he was probably 60 years old i forgot where he was from somewhere in latin america

00:18:25.360 --> 00:18:30.320
 uh venezuela or something this guy he looked like he was waiting for this for like 30 years or something

00:18:30.320 --> 00:18:35.920
 usually that's i mean that's how long it takes so yeah maybe yeah depending on the country of origin

00:18:35.920 --> 00:18:42.080
 right so yeah but he was like singing the anthem and he was dancing it was incredible he was so happy

00:18:42.080 --> 00:18:45.760
 when i was going in i was a bit cynical about this whole thing i'm like yeah just give me the paper

00:18:45.760 --> 00:18:53.520
 but in there i got really really well i wouldn't say i got really emotional i got a bit emotional

00:18:53.520 --> 00:19:00.080
 much more than i expected it's a big step so that's totally normal to feel overwhelmed and a bit emotional

00:19:00.080 --> 00:19:08.480
 in that well now you feel very american between episode 8 or 10 and episode 35 you've now become

00:19:08.480 --> 00:19:13.760
 american i think when we did episode 8 is probably when i just applied for it it actually took just six

00:19:13.760 --> 00:19:20.480
 months not not that long yeah cool let's move on next to our entree you are talking about positioning we

00:19:20.480 --> 00:19:26.960
 never finished that thread so like briefly i guess do your takeaway from oh no i was just wondering how

00:19:26.960 --> 00:19:35.600
 much it might have helped or might help if we do some unnatural things to ourselves again i think it

00:19:35.600 --> 00:19:44.240
 might help but i don't know it's the kind of thing that i could honestly do it how about you what do you

00:19:44.240 --> 00:19:50.720
 think i think it depends on whether i can still preserve my natural voice and tone but i think there are

00:19:50.720 --> 00:19:58.800
 little positioning things that i found that work quite nicely so for example when i write something

00:19:58.800 --> 00:20:04.800
 sometimes in the first sentence or two i would mention that i worked at google and amazon and then

00:20:04.800 --> 00:20:10.800
 that like it gives credibility it gives authority then i also stopped using things like i think or in my

00:20:10.800 --> 00:20:17.040
 opinion or at least i try to use them less of because then it helps you speak more assertively right

00:20:17.040 --> 00:20:21.040
 even though in in conversation one-on-one you would actually prefer to say those things because it

00:20:21.040 --> 00:20:26.240
 makes you more humble but when you broadcast you think it makes you more humble it just makes you

00:20:26.240 --> 00:20:32.480
 seem weak that's what they're saying no no i just said like i think it makes you feel more humble

00:20:32.480 --> 00:20:39.840
 it makes other people perceive me as more humble i know this is a fact yes oh i should say it makes

00:20:39.840 --> 00:20:44.720
 other people perceive you as a more humble person and you should do it yes

00:20:46.320 --> 00:20:53.280
 yeah no i think but those things are very organic right maybe we will someday get to that kind of

00:20:53.280 --> 00:21:01.600
 place making these small changes little by little but what i don't want to do is completely do something

00:21:01.600 --> 00:21:09.440
 for the sake of getting instagram views and follows like you said like sitting in a studio

00:21:09.440 --> 00:21:15.600
 making it look like there are people who are listening to us like in a ted talk that's a lie that's not

00:21:15.600 --> 00:21:25.440
 a small positioning part and the cleft track yes yeah i won't be able to do that but making small

00:21:25.440 --> 00:21:31.920
 changes here and there maybe someday you do get to a position where people are sitting there and are

00:21:31.920 --> 00:21:38.560
 listening to you and cheering and all that and then you post that yeah totally yeah cool

00:21:38.560 --> 00:21:45.440
 cool 26 minutes in warming up in our episode about software you feel warmed up yet i don't know what

00:21:45.440 --> 00:21:52.400
 temperature is right now in my room but it is incredibly hot without ac talking about temperatures what was

00:21:52.400 --> 00:22:00.560
 the temperature that day when you were going to sit in a car and record one hour long podcast episode it was not

00:22:00.560 --> 00:22:07.520
 too bad because a it was pretty early actually no it was around noon but they had a shaded uh parking lot

00:22:07.520 --> 00:22:12.800
 oh underground yeah but you didn't know that when you said okay i'm going to record from the car you

00:22:12.800 --> 00:22:19.040
 didn't know that i didn't know that no that would have been quite an experience i think i would have

00:22:19.040 --> 00:22:25.120
 had to keep the engine running otherwise i wouldn't be able to use the ac right yeah well anyway glad we

00:22:25.120 --> 00:22:31.920
 didn't have to do that thanks for cory for rescheduling to the next day yeah all right let's get on to the

00:22:31.920 --> 00:22:39.680
 entree so i'm just looking at our notes and we wrote them up like six weeks ago i think and i'm trying to

00:22:39.680 --> 00:22:51.200
 see how we segue into this so in our episode 26 we had jason freed and his co-founder dhh david

00:22:51.200 --> 00:22:57.120
 hanymar hansen created ruby on rails and the thing we have written here in those is culture of putting

00:22:57.120 --> 00:23:01.760
 things on rails up front so that's that's a segue i don't know if it worked

00:23:01.760 --> 00:23:10.800
 okay yeah that's like a junction in a railway track where like some other train comes from the

00:23:10.800 --> 00:23:17.440
 side it like hits you it derails you yeah now we are on a different train yeah anyway yeah i think

00:23:17.440 --> 00:23:24.400
 it's a train wreck so very early on we had nothing we just had a document where we wrote up what we

00:23:24.400 --> 00:23:30.960
 want to work on like in broad strokes something's kind of more detailed but it was just nothing just

00:23:30.960 --> 00:23:37.200
 a bunch of characters typed in a document right we didn't have a mock-up or and this is like

00:23:37.200 --> 00:23:45.520
 very very vague like we want to do something where the podcast is not just the audio some at that level

00:23:45.520 --> 00:23:50.880
 yeah we might have had something drawn in like a notepad which we didn't use in the doc basically

00:23:50.880 --> 00:23:56.320
 what i'm saying is like there was nothing that actually creates the software there was no code

00:23:56.320 --> 00:24:00.800
 there was no folder with files there was just absolutely nothing not even mocks like you said

00:24:00.800 --> 00:24:07.520
 no mocks on on computer and as we started setting things up i think one of the first questions came up

00:24:07.520 --> 00:24:14.240
 was like do we use cicd for this and these are the rails that i'm referring to are we going to just do it

00:24:14.240 --> 00:24:21.600
 like the college kids in the basement away and just like whatever not use version control not use cicd

00:24:21.600 --> 00:24:26.880
 because they probably don't even know what it is just hack the thing up deploy directly to production

00:24:27.440 --> 00:24:35.280
 have users three weeks in and then see it all burning flames in six weeks and then like redo the whole

00:24:35.280 --> 00:24:43.040
 thing only to redo it again later on and i think we made the decision to invest pragmatically into tools

00:24:43.040 --> 00:24:49.760
 up front and i was going to add that word pragmatic there because we did do a lot of the things you said

00:24:49.760 --> 00:24:55.840
 there but we also didn't do a lot of things yes yeah i mean compared to let's say what amazon does

00:24:55.840 --> 00:25:02.880
 or google does for their systems we are like at maybe nowhere yeah we're probably at 30 30 percent

00:25:02.880 --> 00:25:07.840
 i mean i wouldn't say we're nowhere actually tell us what we have do you want to talk about this from

00:25:07.840 --> 00:25:15.440
 like the rails perspective or and i'm not saying ruby on rails like the guard rails perspective or

00:25:16.240 --> 00:25:22.160
 from like what do we use what we have yeah i feel like more like what are the processes

00:25:22.160 --> 00:25:30.160
 that we've instituted to help us be more effective even though it costs us time up front it also some

00:25:30.160 --> 00:25:35.360
 money on an ongoing basis but it really helps us be more effective i guess what are the tools and

00:25:35.360 --> 00:25:41.520
 processes and yeah and what are the tools that we are using to achieve those yeah i think the only meaty one

00:25:41.520 --> 00:25:48.880
 in terms of like automation and all that that we have set up is the cicd for the app everything else

00:25:48.880 --> 00:25:57.920
 like you said we're almost doing what college kids would do right we we are like you said we are coding

00:25:57.920 --> 00:26:04.000
 it up i mean sometimes we do a little bit of back and forth between you and me is this the right way to

00:26:04.000 --> 00:26:09.440
 do about it and especially if it's like a complex feature i do brainstorm with you you brainstorm with

00:26:09.440 --> 00:26:16.240
 me right but other than that we do it we merge it and then we push it and then it's in production like

00:26:16.240 --> 00:26:22.480
 we are doing a lot of those things but i think the cicd part this is where being pragmatic comes in

00:26:22.480 --> 00:26:30.960
 right and what i really like about working right now is pretty much all of the time that we have that

00:26:30.960 --> 00:26:39.440
 we're working on the actual product is working on the product it's not working on the infrastructure or

00:26:39.440 --> 00:26:46.880
 building it or deploying it or monitoring like is google review done is apple review done okay move

00:26:46.880 --> 00:26:52.480
 it to the next step and all that so those are the things we have automated and what tools do we use

00:26:52.480 --> 00:26:57.920
 because you know there are plenty of tools for let's say cloud deployments but for mobile i would

00:26:57.920 --> 00:27:03.840
 hazard to guess it's a black box for many people like what tools do we have for that i think at some

00:27:03.840 --> 00:27:09.520
 point we should actually bring on the founders of the thing that we're using but let's do a brief intro

00:27:09.520 --> 00:27:19.040
 yeah so we use flutter to build the app flutter is a cross-platform app development framework

00:27:19.760 --> 00:27:30.080
 that is by google thank you google don't kill this please for our back end we use firebase which is

00:27:30.080 --> 00:27:35.840
 also it's acquired by google but it's right now it's run by google right it's almost like a part of

00:27:35.840 --> 00:27:41.440
 google cloud platform and it's very well integrated with google cloud so we use firebase and some parts

00:27:41.440 --> 00:27:47.280
 of google cloud please don't kill this again the very well part we can discuss later there were some

00:27:47.280 --> 00:27:55.200
 zombie things there okay yes yeah but we love these things and then once we build the app typically what

00:27:55.200 --> 00:28:01.280
 you would have to do to get an app into the end user's device is you have to build it with like xcode or

00:28:01.280 --> 00:28:09.040
 something like that sign it then probably the apple has some ways of like uploading the build artifacts

00:28:09.040 --> 00:28:15.440
 into app store and then you monitor app store push through like these are the steps and here you go

00:28:15.440 --> 00:28:20.560
 build deploy it add it to this user group and all that same thing pretty much the same thing on the

00:28:20.560 --> 00:28:26.320
 google play store side too they have to like upload the file to the yeah like developer console

00:28:26.320 --> 00:28:31.280
 you build it first i mean like if you do it like a college kid in the basement right so you like you

00:28:31.280 --> 00:28:37.040
 build it in your computer and then you upload the file and then you have to babysit it in the google

00:28:37.040 --> 00:28:44.320
 play and apple developer console yes and you move it step by step like for example right now we have two

00:28:44.320 --> 00:28:50.080
 sets of users for our app you can think about this if you're familiar with like software systems then

00:28:50.080 --> 00:28:58.640
 rollout wise it's like stages we have super pooper users and just users yeah it's the pooper users are

00:28:58.640 --> 00:29:04.800
 internal users which is just you and me right now because we get the crappiest versions yeah as soon

00:29:04.800 --> 00:29:10.560
 as the build is done we get it on our devices actually i don't but that's a different story you do

00:29:10.560 --> 00:29:17.600
 i get it on android i don't get it on apple thanks to some weirdness in apple but anyway it's a rotten

00:29:17.600 --> 00:29:25.360
 apple yeah with a bite gone out of it anyway the next step is a closed testers group that we have

00:29:25.360 --> 00:29:31.360
 set up right and right now how many testers do we have ilia about 15 15 i just allowed this at five

00:29:31.360 --> 00:29:38.400
 more a couple of hours ago and i actually want to talk about that too like how tedious and automation

00:29:38.400 --> 00:29:44.080
 worthy that experience was and now you have automated i'm not doing it manually again like next time i'll

00:29:44.080 --> 00:29:50.640
 automate it before i do it right right and i think this is where it's a really good point about pragmatic

00:29:50.640 --> 00:29:57.680
 right we do things manually as much as like we're not going to spend three days setting up some amazing

00:29:57.680 --> 00:30:03.680
 automation unless it really pays off right within let's say a month or something like that and you know

00:30:03.680 --> 00:30:10.720
 that it's costing time to not do this so i i think what we are optimizing for is like we have only two people

00:30:10.720 --> 00:30:17.440
 we need to optimize our time so that we're actually working on the product and not the infrastructure and all that and

00:30:17.440 --> 00:30:24.960
 that's kind of why maybe today we'll also talk about why did we choose firebase why not aws all of those things but

00:30:24.960 --> 00:30:33.440
 yeah you were asking about the automation machinery because it goes beyond time here because the frustration you

00:30:33.440 --> 00:30:42.000
 experience during wait times and just like sitting idle or like getting blocked i think it also drains

00:30:42.000 --> 00:30:48.080
 energy and then let's say if you were like 100 energy and then you actually spend very little time

00:30:48.080 --> 00:30:53.840
 doing something but it was annoying now you're like 70 energy if you think about energy energy is

00:30:53.840 --> 00:31:00.720
 probably more of an exponential scale you get a lot less done when you're at 70 compared to when you're at 100

00:31:00.720 --> 00:31:06.560
 percent yeah and it's distraction which is kind of like the other side of energy yeah yeah yeah yeah

00:31:06.560 --> 00:31:15.120
 totally so we use a thing called tramline that's uh a few of my it's also a startup a few of my friends

00:31:15.120 --> 00:31:19.920
 set it up maybe a year ago or something they're doing pretty well now they have started getting

00:31:19.920 --> 00:31:26.160
 paying customers and all that including us yeah we pay them uh we shouldn't disclose this we should not

00:31:26.160 --> 00:31:30.720
 disclose what we paid them yeah because they're going through the process of figuring out their

00:31:30.720 --> 00:31:37.600
 pricing and all that we are paying in advantageous early access rate yes yes and tramline is basically

00:31:37.600 --> 00:31:44.400
 you write your code you merge it into your github whatever branch that we have it on the main branch

00:31:44.400 --> 00:31:50.640
 then it picks it up from there builds it so we use something called bitrise to actually build the app

00:31:51.440 --> 00:31:56.880
 because you can only build an ios app on apple hardware you can't build it on linux or something

00:31:56.880 --> 00:32:04.000
 like that so bitrise has some almost on-demand kind of machinery available that tramline is the

00:32:04.000 --> 00:32:09.200
 orchestrator right tramline figures out that oh there's a new code sitting on github and you want to make

00:32:09.200 --> 00:32:16.400
 a release or whatever it triggers bitrise to go do the build using apple hardware for the ios build and

00:32:16.400 --> 00:32:24.080
 linux for the android one it basically uses flutter commands and all that to build the app sign it and

00:32:24.080 --> 00:32:31.280
 all that and then tramline uploads it to app store and google play and then basically whatever you would

00:32:31.280 --> 00:32:38.000
 do all those manual steps it automates all that the only manual step that you and i have is the

00:32:38.000 --> 00:32:44.320
 we do have a manual approval and this is the pragmatic part i was trying to come to is we haven't written

00:32:44.320 --> 00:32:49.680
 integration tests or anything and people who know me would kind of like not believe that but yeah

00:32:49.680 --> 00:32:56.480
 there are no automatic tests apart from like there is one whether the app boots or not

00:32:56.480 --> 00:33:03.680
 yeah it's already bootstrapped so yeah that's the machinery that we're using so yeah flutter

00:33:03.680 --> 00:33:10.720
 firebase and then for cicd bitrise and all this tramline yeah so once you merge a pull request

00:33:10.720 --> 00:33:17.280
 the next night tramline just picks it up and makes a release and in the morning uh we see a new version

00:33:17.280 --> 00:33:22.960
 on our phone because test flight automatically updates it yeah because we are internal users group right so

00:33:22.960 --> 00:33:28.640
 as soon as the build is done it deploys it to the internal users group yours and my phones right now

00:33:28.640 --> 00:33:37.120
 my android your ios yeah and then that is the only approval step we have is to test it for a little bit and

00:33:37.120 --> 00:33:43.440
 then we say okay this is ready to go send it to the beta testers yeah and then you get it pretty much

00:33:43.440 --> 00:33:50.000
 right away well not right away maybe within an hour or so so google play the first review

00:33:50.000 --> 00:33:58.400
 of the app the very first review it took about eight days eight days but since then it feels very

00:33:58.400 --> 00:34:04.560
 automated uh because as soon as we send it for approval within about 30 minutes it gets approved

00:34:04.560 --> 00:34:11.760
 and then gets deployed apple there's more of a human things like there's a mix of automation and human

00:34:11.760 --> 00:34:17.840
 in the loop because some bills i don't know what they do but on some bills they determine that this

00:34:17.840 --> 00:34:24.720
 needs more time or maybe a human to verify or whatever and so it takes time sometimes up to a day

00:34:24.720 --> 00:34:31.200
 but sometimes it gets like approved in 30 minutes or 40 minutes yeah yeah and we have a sign in with

00:34:31.200 --> 00:34:37.440
 google so basically we don't allow any unauthenticated usage of the app at this point if you use the app

00:34:37.440 --> 00:34:43.360
 as a beta tester you have to be signed in and we use google sign in is the only option available right

00:34:43.360 --> 00:34:52.400
 now so and what happens so this was surprising every time we send the app for review there's like four or

00:34:52.400 --> 00:35:00.640
 five new users who sign in and they seem to just sign in they don't do much in the app right i thought

00:35:00.640 --> 00:35:08.560
 it was like four or five hundred users no no no right now we're up to about i think 70 or so but every time

00:35:08.560 --> 00:35:15.360
 you do a release there's like five to ten ish new users who pop in and we were really puzzled like

00:35:15.360 --> 00:35:21.520
 who are these people why how are they finding it because it's not listed anywhere on app store or

00:35:21.520 --> 00:35:28.480
 google play on the public one the only way to get it is if we invite you in even then we add people to

00:35:28.480 --> 00:35:33.760
 the group so if people are not in the group they shouldn't be able to install the app right so the only

00:35:33.760 --> 00:35:39.840
 thing we were kind of hypothesizing is this must be google testing it or something and we couldn't find

00:35:39.840 --> 00:35:45.600
 any documentation and i was freaking out a little bit about it so i posted on reddit and all that and

00:35:45.600 --> 00:35:52.160
 people said the same thing like yeah it's most likely google testing it slipping on our apps so they can

00:35:52.160 --> 00:35:59.360
 improve youtube music yeah yeah youtube music for podcasts yeah but the the email addresses have a

00:35:59.360 --> 00:36:05.600
 pattern right it's like first name dot last name and some four or five digits or something like that so

00:36:05.600 --> 00:36:13.200
 it's like ryan dot severs one two four five six at gmail.com and uh we were not able to figure out

00:36:13.200 --> 00:36:18.160
 any start document it's kind of bizarre that this is like google doing it and i hope it's google doing

00:36:18.160 --> 00:36:25.200
 it because but man our daily actives were growing we just have to keep making releases

00:36:27.040 --> 00:36:31.440
 actually that's an interesting point about vanity metrics right so let's say in our case if all we

00:36:31.440 --> 00:36:36.960
 tracked was just how many people sign in daily active users people who sign into the app at least once

00:36:36.960 --> 00:36:43.360
 what we would get is that every release we would get five new sign-ins and uh yeah our daily actives

00:36:43.360 --> 00:36:47.600
 well actually not daily actives like new users and it would be like a total vanity metric here

00:36:47.600 --> 00:36:52.960
 it would just keep growing and like you said the more users we make the more it grows so you basically

00:36:52.960 --> 00:37:00.080
 incentivize absolutely inappropriate behavior to gain the metric that makes no sense the other thing that

00:37:00.080 --> 00:37:08.880
 we've set up early on which made us feel very professional is we've set up a project in github

00:37:08.880 --> 00:37:15.760
 very early on we were we started using notion to track our stuff and uh track some of the tasks

00:37:16.320 --> 00:37:23.760
 but i never liked notion for one simple reason uh of how it manages text editing blocky text editor it's

00:37:23.760 --> 00:37:28.320
 in blocks yeah you can select multiple bullet points like for me if you can't select multiple bullet

00:37:28.320 --> 00:37:34.000
 points you're out of my software deck you know i cannot use a use software like that yeah we needed

00:37:34.000 --> 00:37:40.320
 to move somewhere else we moved all of our docs to google docs and google sheets luckily no slides yet

00:37:40.320 --> 00:37:48.240
 and we created a github project where we started to accumulate tasks and we actually were really

00:37:48.240 --> 00:37:52.560
 deliberate about how we set this up and i think actually what we've set up is pretty good i think

00:37:52.560 --> 00:37:59.600
 it's working quite well for us so what we've done is obviously we have the repos for the app and the

00:37:59.600 --> 00:38:05.280
 back end for the app and the back end yeah where all code lives but some of our features actually most of

00:38:05.280 --> 00:38:11.360
 our features they require work in both the app and the back end but they may also need design so we

00:38:11.360 --> 00:38:17.040
 can't put them in one of those repos or they will just get lost there so what we've done instead we

00:38:17.040 --> 00:38:25.440
 created a meta repo as you know we love the word meta at this point yeah yeah despite meta meta lc

00:38:25.440 --> 00:38:31.920
 or meta inc whatever they are meta systems i think anyway so we have a meta repo which has a project

00:38:31.920 --> 00:38:38.560
 associated with it which looks like a kanban board which has super basic fields like i mean columns to

00:38:38.560 --> 00:38:45.040
 do in progress i think in design test i think blocked or something and then done we don't have

00:38:45.040 --> 00:38:50.880
 blocked we don't have blocked yeah okay good we're never blocked because it's you and me right as you

00:38:50.880 --> 00:38:58.400
 can get blocked by third parties that's stuff with a g yeah and basically we create a bunch of issues in

00:38:58.400 --> 00:39:05.520
 in that project which get created in the meta repo and that has been working surprisingly well for us

00:39:05.520 --> 00:39:12.720
 the experience looks very much like what i'm used to at amazon but a lot simpler and i think same for you

00:39:12.720 --> 00:39:21.840
 it's lightweight and i think we're also keeping a balance on adding enough details into these tasks

00:39:21.840 --> 00:39:28.000
 but not like too much details at the same time yeah we basically just use check checklists to add like

00:39:28.000 --> 00:39:34.560
 these are the few things that we need to do to make sure that this feature is done right and as we create

00:39:34.560 --> 00:39:40.560
 those features we would paste screenshots we would paste some links to things that helped us troubleshoot

00:39:40.560 --> 00:39:47.280
 issues you would sometimes post a lot more when you have to like debug stuff but it will help us later

00:39:47.280 --> 00:39:52.960
 run if we have to do with the same problem again but also for me especially screenshots is part of the

00:39:52.960 --> 00:39:59.680
 memorabilia because our app will be not recognizable a year from now and we can just go back to those

00:39:59.680 --> 00:40:08.400
 github issues that have a number below 200 look at those and uh we actually had a version of the app

00:40:08.400 --> 00:40:16.320
 with our internal name and we were using an orca for like the spinners and error pages and all that

00:40:16.320 --> 00:40:25.760
 and i kept a gif of the app experience for posterity maybe we'll someday release that way it'll be fun

00:40:25.760 --> 00:40:37.680
 we'll see but yeah that was killer anyway anyway so i think i have seen these task management systems

00:40:37.680 --> 00:40:47.680
 go two ways one is you don't have any or enough information in them so each task is like the

00:40:47.680 --> 00:40:56.320
 title is a line that says do x or like implement analytics or like you know something like that

00:40:56.320 --> 00:41:01.280
 it's like when your tpm forces you to use a task management system and everybody complies

00:41:03.360 --> 00:41:09.680
 and then it's unusable yeah and then like you go after a month and you have no idea what's involved

00:41:09.680 --> 00:41:16.800
 in that what it is about and all that that's one spectrum the other side of the spectrum i've seen is

00:41:16.800 --> 00:41:25.120
 adding too much in there and this starts actually really nicely in the beginning when you add like a lot of

00:41:25.120 --> 00:41:33.120
 details in these stories but what starts to happen is you start believing in that framework quite a lot

00:41:33.120 --> 00:41:40.960
 where you start adding nitty-gritty tasks for each and everything even if you're never going to work

00:41:40.960 --> 00:41:48.800
 on it like like a pasting code there like this is the code i wrote oh no no i'm not talking about the

00:41:48.800 --> 00:41:55.680
 details of the task but so let's say we come across a bug today well if it's a bug it's a different story

00:41:55.680 --> 00:42:01.360
 but you have an idea for an improvement if you keep adding all those things into your task management

00:42:01.360 --> 00:42:07.280
 system pretty soon the task management system will start to overwhelm you with the amount of things

00:42:07.280 --> 00:42:11.520
 you have there because every time you need to go through you need to triage like what do we need

00:42:11.520 --> 00:42:18.080
 to do for our next release like what are the minimum things we need to do to get this app to the next beta

00:42:18.080 --> 00:42:24.320
 right so like when you're working on 10 things but you have like 700 tasks but you have to manage those

00:42:24.320 --> 00:42:31.840
 yes exactly and i think this is where the balance between them is critical so far it's only been

00:42:31.840 --> 00:42:37.760
 what like six months or so i guess for us so we'll see how it goes after a year but so far it's a good

00:42:37.760 --> 00:42:43.280
 balance like i have a grasp of the task board like pretty quickly yeah and with this i'm getting the pull

00:42:43.280 --> 00:42:53.040
 requests so my son requests me to pull out of this conversation and go read him a book so he can go

00:42:53.040 --> 00:43:01.200
 to bed so he can wake up tomorrow morning and go to school nice and refreshed so dear listeners we will

00:43:01.200 --> 00:43:09.200
 finish our discussion about uh the google side of the world and you can see him banging on on the

00:43:09.840 --> 00:43:15.760
 on the door i can hear him yeah it's like a pull request where they also pinged you in chat right

00:43:15.760 --> 00:43:21.120
 yeah it's like hey can you look at this pull request yeah yeah i sent it just now two minutes

00:43:21.120 --> 00:43:26.720
 ago yeah and then they come to you like tap you on your shoulder it's like how about my pull request

00:43:26.720 --> 00:43:33.200
 right so i guess we'll just have to say goodbye at this point i have forces far beyond my capacity

00:43:33.200 --> 00:43:39.280
 to manage right now yeah yeah we'll catch up next time all right bye good yep bye

00:43:39.840 --> 00:44:09.820
 Thank you.

