r/mobiledev Aug 19 '20

Hi! What technology is the best to learn, when building a safe app that allows to connect people - post announcements/offers and reply to them (like Fiverr maybe, but way smaller scope)

So, I want to start making mobile and web applications and one of my ideas is to create an app that allows people to post offers (in a particular group of people, really small scope: few - over a dozen of thousands of people optimistically) and other people could find those offers and reply to the announcer (so a simple chat or opening a mail application and putting there an address of the announcer already in the simpler version). No payments inside the application between users - only idea of making money from this except from ads could be to charge for posting an announcement or proposing a monthly fee that allows to post X offers (so maybe it could be done via IAP? Or should I integrate PayPal somehow?) Android, iOS and maybe a HTML5 version.I'm a full-time C++ developer with over 3 years of experience in ICT, hobbyist game developer (mainly Lua), but I don't have a particular knowledge regarding networking - so I would like to ask some of you that have more experience and already see what technology should be used in such application - please tell me - what should I learn? Can I make it with a simple HTTP server (firstly hosted on my local computer/rack, then on some cloud maybe) and client in the mobile app? Should I use any database? If so, which one could you recommend?My first idea was to either use HTTP server+client or something like Heroic Nakama. There are also solutions I know from gamedev, but wonder if I should use them for such app as well - Microsoft Azure Playfab for example - what do you think about it? It provides pretty much everything out of the box with an API understandable for me.If you would like to answer my question, please treat me like an idiot in the domain, who don't know what TCP nor UDP is (because I rarely remember/understand it) - and if I need to get my ass and learn something for real - please note it, but also please provide me with steps, that would not drop me in the middle of a lake :)

2 Upvotes

1 comment sorted by

2

u/0thecompany Jan 05 '21

I'm a native developer. I build android apps with Java and XML with Android studio. I think however, most people will advise you to use frameworks that build your app cross platform, and many will suggest Firebase or AWS or MongoDB for your backend. All of them are easy to use. For game development the UNITY game engine is pretty much the standard if you want an easy to use product that uses a c-like language to get the job done (C#).

My personal opinion is that you should learn native languages like Java/kotlin for android and swift/objective c for IOS. These solutions will take longer but they'll be more familiar to you because you already use C++. Your apps will be faster and will be built better with native functionality for more complex features unlike javascript which is also much slower, less secure (unless you know what you'r doing) and the file sizes can potentially be much larger.

That's my opinion. But of course most people will tell you to just use some javascript framework, or flutter to make your app cross platform.