coding the next BIG social networking app (ep1)

Phil Choi introduces a project to build a person-first social networking mobile app for programmers, documenting the development process with a small team. The video explains the app’s goals—humanize programmers, showcase engineering skills, provide mentorship and portfolio experience—and outlines current technical choices, team roles, tasks completed, and near-term plans (design, Firebase backend, microservices, MongoDB, admin panel, testing, deployment).
Chapters
Can a dad, senior developer who used to be an English teacher with his mentees from all over the world create a game changing app that could save programmers from doom and gloom of the age of AI within three to four months?
Yo, you said you were gonna do any we could get it from I. So the idea came about when actually it came out when we were first starting Litfield Channel. Many wanted to start an app and document the process of building the app. But I told him at the time I was like, I can't, I can't put my heart and soul into something when I have my heart and soul into the channel, right? Because every single app that I do, I try to go all in and I didn't feel any idea and I was like, I had kind of like low self confidence at the time because I just did get laid off. So I was like, I don't want to get back into like the thick of developing anymore. But after I found the right people that have reached out and you know, actually like I really like developing, right? I like coding. So. And you know, we're making enough capital now to kind of do something interesting and I think one of the best ways to help them was to get a live app in the app store to you know, help out with like a line on the resume. And Moody had a great idea, Jocelyn had, you know, had some ambition and Gabe, it's a good learning process and you know, people reached out and song, you know, he's been wanting to learn and stuff and I think it's. And I always say like, you know, build through personal projects, right? Things that you're passionate about. So there's a bunch of these code fluencers, right? And maybe I could call myself one now, but where's their own app, dude? So maybe something different that we can do at left Phil is create an app and actually try to start a startup and we can hire people, we have a great community and it's just fun. It's like I don't think it's really for monetary gain as in for now to gather people and then I think once the people come, I think things could take off. So what is the app idea? The app idea is a social networking platform. Everybody wants to build like a Facebook or LinkedIn or a Reddit, right? Well, as a programmer I can. We can. So I see a bunch of social networking platforms for programmers, but they're all code first, right? Stack Overflow, code first, GitHub, code first. What about a person first social networking platform for programmers where people can ask questions, meet people, you know, and humanize programmers a little bit. You know, that's what I want to do, you know, in the world of AI and where you don't even know if that code is being written by an actual human or some generative AI, you know, but it's cool to document the process that actually people need to be used. And, you know, there's a lot of things that haven't been built yet. And that's something. That's where we come in and try to build something interesting and unique. Light, social, the mobile app, it can showcase our skills and it'll showcase the development team and we can become. We can show off this app and say, hey, we can pull this off and we can build other apps like it, maybe other things. And we're going to show the quality of the code and show the process, you know, why something takes a little bit longer. The whole process, you know, like show the whole development process. And there's no fluff. It's just building with the time that we have, building quality code and showing people that it is possible to choose a team and create some kind of software firm where you can build other projects out. What can we prove by building this app? We can prove that things can be built out of thin air. You know, a lot of people's concerns about maybe the mentorship or something is honestly just that first step of getting started. And I think getting started is the hardest part. They say like, you know, when an airplane takes off, when the air conditioner is turned on, that's like when the most energy is used to like start it. And that's true with anything this, the start is going to take the most energy. But once you get into the flow of things, it gets challenging and that challenge turns into fun. That's something that I hope to accomplish, just accomplish that things can be completed things. With the right documentation, with the right plan, you can get things done. Start with an idea and a keyboard, laptop and you know, take the races and you know, programming is not dead. And you know, like programming. It's not just about programming for me. It's about like having fun. I didn't play Madden all month and I saw how much work I got done. I just replaced that time and I just do something like code. Like I listen to music and I code and it's equivalent and I've been watching some Korean dramas. But anyways, check this out, guys. It's always good to get like a pair of headphones, just like my old Bose headphones, but Just pop those on, get the coding. This is some really loud music. Coding's for music lovers too, you know, it's like the only job where you can really listen to music, you know, and just zone out into your code and at the end you have something to show for it after like three hours of playing video games or whatever. Madden sure like relieve my stress. I'm like honing in on my timing of my button pressing skills. But at the end of like coding, at the end of the day like you know, everything's logged with your get logs. Holy shit. I did a bunch of work. That's cool. It didn't even feel like work, which I really enjoy. Yeah, you know the story behind about this app like you know, before I got laid off I was building like a really big social networking app with like E commerce and everything. So it's not like I use that code or anything but definitely I have knowledge on how to build it. So it's something that I feel is achievable. And it's not like something I'm like learning on the way. I'm kind of, it's just like basic stuff like commenting, liking asking questions, editing, profile and all that kind of stuff. So you know that I have a bunch of code from like that I've written. So it's just like, it's not like I'm copy pasting it in there but I'm kind of just, you know, and everything's getting updated so I have to relearn everything anyways. My old code doesn't even like run sometimes because it's not updated. So you know, I have some base knowledge but it's fun to relearn the updated packages and updated, updated things and there's a better ways to do things now. So I'm just trying to code everything the documentation says to do it in and you know, it just proves to show like what I was building before I got laid off or whatever. It could be something incredible. All right. And you know, I've built things like IoT kickboard app, mental health, application journal, journaling and chatbot and just many other things like E commerce platforms, product showcase platforms, you know, cryptocurrency stuff and social networking platform and that's what we're building now. So it'll be fun. So if you want to be mentored by me and learn how to code, clean and learn how I learn, click the link below in the description and fill out the form and we'll contact you from my overview. Right now for some reason I'M seeing Booty and Jocelyn more as the front end. And then Song and I do it doing mostly back end. So right now, now we have a team of five developers. The wild child from Mexico, Gabe, the intelligent go getter. And we got Booty, Ambitious, passionate developer. And we got Song, the intelligent one. And then you got me. Me. You know, everybody thinks, you know, you just learn React native and build a mobile app. You have an app, but it's actually a lot more than that, right? So we have like the app, it's like the starting hello and like login sign in. Everything's ready, got the chat ready and everything should be good. Got all the places you need to start coding. And now it's not just the front end, right? We gotta build the. We're building the back end out. So you build the back end. You got the. Right now we got the user service, we got the user point service, you got the post service. Right now I'm just working on the user service a lot and I'm using Firebase. And then we have the admin panel right here. So we're using something called React Admin. It's pretty cool. Comes with a bunch of code. Reminds me of Django a little bit. It's pretty cool. We got Jocelyn working there. Hey, what do you think of the app so far? It's a lot more work than Expo, right? Got. Got the admin panel, it looks pretty good. So we got a lot of tasks right now. I'll show that. So we just manage everybody using Trello. This was January, now this is February, so we got a bunch of tasks done here. So in January we just set up the app. I mean, there was a big bottleneck from like Vector Icons that was like a dependency from React Native elements. And it just seems like that documentation was updated. But we just initiated a bunch of code, initialized a bunch of code and set up like the ESLint module resolver, research some UI libraries and set up some Firebase stuff and all that kind of stuff. So we got that stuff done, but there was a big bottleneck, so. But we got through it. So we didn't get that many tasks done. But in February we're off to the races. So there was some Firebase upgrading issue that I fixed the other day. Gifted Chat, React Navigation, set up the admin panel, set up React Query, did some Lottie animation stuff. I'm. You know, it's getting kind of fun now, right? We have like heart. Damn. We got like, we got. Look at that dude, look at that Animation Dog, set up the API gateway and the service persist login state, just reactive form and all this kind of stuff. Async storage, Global state management, Redux and there are some tasks to do. Gonna set up Storybook. We need to set up a team notion and set up some other screens, set up i18, push notifications. Then we do social networking, social authentication and I'll get that done or we'll all get that done. The only one we have to do is the Apple login later because we need to set that up with the Apple developer account that we need to get. And then later on we need to set up the fast lane and maybe flashlight and all that kind of stuff. So I have all my resources here, Communication channels, task types, the backlog, what we're doing on this Sprint, what people are doing now. And then ready for QA will be like ready for quality assurance check and then it gets put into done or recheck. I think this should be done. It's looking pretty good. We still have a lot to do now the next thing we need to do is go to Fiverr and look for a designer. So we'll get, we'll get that done, we'll document that process. I think it'll be pretty interesting. Yeah, we'll get like sample screens and we'll get them and we'll be like, all right, cool. And, but first we need to make some user stories and some documentation to give to that designer about what kind of app we're building and then research a little bit. And basically, you know, we want to make something like Reddit, LinkedIn, Facebook, Threads, Instagram and all this kind of stuff. So I think it'll be pretty interesting. So right now in this, in this, in this back end we're using, we're using molecular in the back end for microservices and we're also using Mongo. And so Mongo is no SQL. So why we're not using SQL is I just better at no SQL? Personally it's number one. But yes, we're going to have a lot of relations and things like this, but we can kind of use Mongo with like simple relations and then use aggregations for joins later. And I just, I, I prefer coding like that anyways. I feel like Atlas is pretty cheap compared to like RDS and AWS for like SQL databases. And just to be honest, like I'm just better at no SQL and Mongo and aggregations and population. I just think I'm just going with the knowledge. I know they're Both valid answers, they're both valid. Creating the whole ERD and all that kind of stuff, sure it's really good for documentation. But Mongo, you can kind of do something very similar. Anyways, I feel like SQL has its own little like engine that's like runs very fast inside of its environment. But I like Mongo. Here we have a lot of code written already inside of the mobile app. We have all like these hooks written, use logger use keyboard avoiding view. Right now we're using react native elements which is really helping with the theming themes like the theme provider and the modes and you set like the definition files for how you want to use things, the utilities. I just have like even like my old code. I have all these like classes written like app storage and all this kind of stuff to control lacing storage and even like the Firebase service, you know I have knowledge and like using it. So just it's not too hard to use. So I just really like it. And you know I have all my HTTP kind of typed out and like my react query wrappers all kind of typed out here. It's pretty cool. And you know I'll just take code that I've already written. I think there I. I think I have a repository in the GitHub of like code I have. So I'll just show you guys. CD code Leadville utilities here CD so we have like a bunch of little codes code that I'll probably use here like that I've always used. I think we even like made videos about these code like a type getter. So you can just run an object through this and it'll give you all the types, the type file. There's also like get property by dot notation I'll use in my code later and I'll use like this key exists so like no matter how nested a key is, it could try to find the first key instance in there. So I'll probably use some of this code right now. It's just in some. It's in like the beginning stages but all the annoying stuff is all done. TypeScripts TypeScript for the navigation, all the screens like placeholders, auth context, the configurations whoops configurations. Now we're ready to get design and you guys will see it come together. Now that we're ready to get designed we're going to spend you know some money, maybe like a thousand dollars to get a design, you know off to the races and if you want to learn how to start a project from scratch, you know and how to start one and finish it all the way to deployment. Click on the link below and I can show you. We're going to document the process of everything from beginning of the app, the way it is now, the end process of getting like the developer accounts, setting up those fast lane, setting up all the deployment stuff. And it'll be really cool. And you know, even if you want to test the app or something, maybe we can ask you to, we can add you to the test flight or internal testers and we'll get you testing as well. And remember, if I can do it, you can do it too. Coding saves lives.
More from Phil

day in the life of a software engineer | 5 hour productivity | building my dev agency 🔥

day in the life of a software engineer | 3 hour productivity | coding my 6-figure community startup

day in the life of a software engineer | 5 hour productivity | coding our sns startup app LFG

day in the life of a software engineer | 5 hour productivity | creating apps that makes big money






