Intended audience:- This blog post is for those non-technology founders and idetaors who want to understand which technology they can chose for their platform.
Many non-technology founders struggle to find the answer of this question “Which particular programming language or technology stack they should choose to build their application on”. And the answer is, there is no particular one programming language you can choose. And every programming language has few advantages over other and few dis-advantages. So there is nothing called best programming language. This article assumes that you are not developing a simple website, but a full-fledged web or mobile application.
Architecture of any technology platform is usually divided into three layers. Let me explain this to you in very simple terms:-
First layers is called database layer. This is the layer where your data will be stored. There are primarily two types of database now days which are widely used.
- RDBMS systems, example of these are MYSQL /Postgress etc.
- NoSQL database systems, example of these software includes MongoDB /Casandra etc
Second layer is called backend layer. This is the layer where your code related to how data should be stored in your database, how it should be read and how it should be sent to your client layer. Languages like PHP, Java or NodeJs is used here. Current trend involves writing your backend logic and code in such a way that it’s exposed as web services to the layers above it.
But now many people ask , this is fine Vikram. Can you pls give us quick recipe at a same time. So my criteria of choosing a programming language or technology are that it should enhance the productivity of team at a same time give required performance.
At last, this article must have given you a high level overview of the complexity involved in choosing and working with various technologies when you want to develop your technology platform. Thus its very important to find a technology co-founder for your idea. Just hiring technical guys will not solve your problem.