¿Cuáles son los conceptos básicos que una persona debe saber para crear software como Facebook y WhatsApp?

Lo más básico que debe saber una persona es que debe ser lo suficientemente maduro como para darse cuenta de que con los escenarios actuales en su lugar no puede replicar este tipo de aplicaciones.

Lo digo en serio. No digo que no pueda hacer esta aplicación, es posible que pueda hacerlo. Pero no va a funcionar en el mercado. Facebook se ejecuta en más de 30 millones de líneas de código. Para que pueda hacer que su aplicación sea mejor que Facebook, debe tener una versión beta que derrote a Facebook para hacerse cargo de ella. Para eso necesita una gran inversión, tanto en términos de dinero como de tiempo y, aun así, es posible que siempre esté detrás de ellos.

Muchas personas al aprender programación sueñan con crear una aplicación similar a fb y ganar miles de millones. Así no es como funciona. Estás siendo uno de ellos ahora.

No me malinterpretes, pero quería mostrarte el otro lado de la hierba.

Casi no hay ningún desarrollador / arquitecto que sepa todo antes de comenzar. Entonces, si tienes una idea, salta a ella. Cometerá errores, deshacerá y rehacerá cosas, pero al hacerlo, aprenderá todo.