Home
>_

Dating app theory part 6 - Conclusion


This is the conclusion to a series I have written about a dating app I would not actually build. In previous parts Ive gone through the rules for the app and a budget, then Ive looked at the different ways this could be implemented - through AWS, Cloudflare etc. In this final part I hope to summarise everything I found along the way and explain why I wouldnt bother actually building this app.


Im going to look at the cost of each of the options. Then consider whats actually being provided in that cost and the complexity that would be involved in implementing the solution.


Fly.io - $21.80


Hetzner - 16.80 euros (~$17.87 at time of writing)


Linode - $12.50


Cloudflare - $12.80


AWS - $23.03


So obviously we could just look at those figures above and pick which one is the cheapest. However, each of these prices provide different things worth noting.


Picking a solution


I dont like to think about 'scale' too much, as I think its an easy trap to get caught in when setting up new things. However, if I had a gun to my head and had to comment, I do think that although AWS is the most expensive it would be the most scalabale option. In fact, as mentioned in the AWS post I surprised myself because I thought in this whole thing I would be proving that your not getting a whole lot more from AWS for the higher price. But using Lambdas with a Lightsail instance for the scheduled tasks means we would never need to worry about bursts of traffic.


However, although I think AWS and arguably Cloudflare win on 'scalable', I have not changed my mind on the disadvantages to an unknown monthly bill. All of the other solutions are a known amount each month, whereas these two while I think I may have overestimated, cant be that guaranteed price each month. Which means I still havent changed my mind really on the opinion that AWS mainly has its place in enterprise.


Another thing worth mentioning here is that we could use AWS Lightsail instances and probably get a competitive price compared to Fly, Linode and Hetzner. This would still be an option worth considering because it actually includes egress, whereas again our 'scalable' AWS solution does not include known egress fees.


Also when considering complexity I think AWS and Cloudflare fall behind. While the offering of scale is useful, we would need to knit the required resources together and this is somewhat uncharted territory. I have always said I want to use the Cloudflare development platform for something, but yes I still think there would be a better payoff using a VPS for this implementation.


Finally to hammer home, I did set out with the aim of just 10,000 users for this (pretend) project. So scale is not at the top of the list when considering which solution I would choose. And again, especially when the bill is not guaranteed compared to the VPS solutions.


I must say too that I was surprised how all of these solutions were around half of my £50 budget, especially when they are mostly in dollars and in fact less that half.


Looking at the VPS solutions, its worth noting that the Hetzner solution is just one powerful server, with no backups. Meanwhile Fly provides a set of solutions that would need gluing together too but I believe they provide a robust backup of all of the instances being used. Also consider that egress is on-demand with Fly, so their price is not fully guaranteed either.


Finally then, its the Linode solution, which provides one server with managed backups. I like this option much like Hetzner because its simple, everything is in one place. I know there are downsides to one server. However, when considering Linode I did include an estimate for a two server, load balanced setup with a managed database. This would obviously run more expensive, but the option is there to 'scale' up when needed.


So why Linode and not Hetzner? I think I may have mentioned previously that they provide cheap servers and not alot of managed services. Plus - and this probably gives away some bias here - Ive been a Linode customer for a long while with next to no issues. Also the whole 'stop your server and ask for proof' rumours about Hetzner do put me off using it for anything major.


So, I suppose with all things considered my choice would most likely be Linode. Especially if I wanted to get this project going as quickly as possible. As mentioned, there is a bit of bias as its the known quantity and honestly if you were in my head before this then you wouldnt be very surprised at the choice. Stick to what you know I suppose.


But through considering the different options, I would say my biggest lesson was that AWS is actually quite competitive, especially when considering the Lightsail instances. I would consider using a mix of Lambda, DynamoDB and then small Lightsail instances for a project in the future, which as mentioned is a surprise to me. Also I dont think my opinion really changed on Fly, which was that their free offering is interesting but Im not sure Id use it for any more than that.


Why not?


Okay, so Ive kept mentioning throughout why I wouldnt actually create this project. The idea behind it would be to only roll it out to a small part of the country and then increase in size.


So firstly with the dating app hate coming from a male perspective. Essentially Ive always kept it in my head from whereever I read it that the majority of women are aiming for the top 20% of males, plus there is allegedly 2 females for every 6 male users of dating apps. Im not trying to blame anybody here or anything, what Im pointing out is that if I was to create an app, it would most likely mainly just be men, and most of them would not have much luck.


Then theres the competition with dating apps. The app I have planned out here is alot more restrictive for users than the multiple free and easy apps out there. Why would anybody use this app (which would be browser only by the way, not a mobile app like all of the others) when there are countless others that they could use.


A dating app really needs a critical mass to get going. And I dont think this dating app idea has very much appeal really. Its also worth mentioning how my idea of only releasing this within a small area to start is also difficult, and I didnt consider that people have preferences. So if we happened to get 10,000 signups day one, they could be all different ages and never match. Therefore the restrictions of this app would also have to extend to age range too. Making this even more of a difficult app to push forward.


A try


A small twist in this whole thing, although maybe predictable, is that I kept thinking more and more about if I was to go ahead with this app, what are the things I would push.


Ive spoken before about the issues with dating apps, maybe I havent covered both sides. However if you look at this app, its making a massive sacrifice - running for free with very little tech spend, meaning less features - for the one sole benefit of not relying on money from its users, to enable more integrity.


But the problem with this, is it mainly appeals to men. You may remember at the start that my issue with current apps is that the app wont show you better matches because it wants you to pay. This is a problem for men, women can go on these apps and be inundated with men interested in meeting them. I may be repeating myself here but I would be very surprised if the apps actually push for women to pay. As they need them on the app to attract more (desperate) men.


So the argument would be made, why all this just for a feature that attracts more men. We dont need more men, we need more women and in an ideal world a 50/50 ratio. So, here is my big proposal:


So my theory is that women get inundated with matches, we slow this down already because they only get to see 3 a day. But we didnt specify how many times a person is shown in one day. Therefore, with the new restriction, a woman would only have three pushes a day if she didnt advance with any of her own. Although this means there could potentially be 90 advances a month, this is still lower than the potentially infinite advances on other apps.


Ive mentioned before about chat slots and this should prevent users getting inundated. However I think it would also be good to have to give a reason when somebody wants to unmatch. Then this can be moderated and potentially passed on to the unmatched person. I think this is unique from other apps as ghosting is an issue and nobody is doing anything to fight it. I know theres still safety issues to this but I believe its a step in the right direction.


I have mentioned moderation before, but I wanted to double down on this. If we want this app to appeal to women then they need to feel safe. So I think strict policies on reporting would be needed. For example a fast response from user reports and the ability to suspend accounts while investigating whats happened. The big one here I think too would be that I believe every user should verify their account with ID, then we could issue perma bans for people. This is the only way I think to effectively enable a safe platform.


Lastly with these features, as mentioned ratios between the sexes can be off and we, like all of the dating apps, ideally want a good ratio of men to women. So, when a user attempts to sign up they will be asked their sex. If we have too many of one (most likely men) then they will be emailed when they can join. I cant really think of a better way of doing this really.


Overall this kind of tears apart this whole series as I think there are three big things that would need adding to make the new features possible:


While I think these new features would stay within the £50 monthly budget, they would need more one person to operate.


Equality


I think it is worth mentioning that this would be a heterosexual dating app. This whole idea comes from a straight male and so I havent got the experience required to figure out the issues within the LGBTQ+ dating community, if there even are any. This is more or less here because if anybody is reading this and has gotten this far, I would want them to know Im not ignorant or prejudice, this is just a very specific idea that would aim to fix my specific problems. And theres no saying that if this did happen (it probably wont) that there isnt a future app for these other communities.


Conclusion


Overall, Ive spent a load of time on this series and its spanned across months. Ive enjoyed this experience and I think Ive probably repeated myself alot. Its nice to see that some of my expectations (mainly about AWS) have been changed. Its also nice to finally take a look at multiple solutions and actually take note - rather than my usual googling around and not remembering anything, then moving onto the next idea.


It is strange though, because basically these posts have taken me so long that by the end Ive found a bunch of features that I would want to add to this. Which would invalidate the whole thing in some ways. It makes me continue to see just how difficult it is to stay focused and ultimately see how just Doing The Thing is the best option. The amount of time and effort I have spent on this, I could have had a very simple MVP by now.


I hope nobody is reading this, but if you are I hope you somehow got something out of all of this. I hope its inspired you in some way and hopefully you can see that overthinking isnt very valuable. Just Do The Thing.


15 Jan 2023, 12:18 p.m.

Home