How To Choose The Best Tech Stack For Your Startup
Choosing a tech stack can be a tough decision as it’s one of the most crucial factors in a startup’s success. Remember that a good software is a good software, no matter if it’s implemented in JS, PHP, Python, Ruby or any other programming language. In other words, it’s better to have a PHP software that is well implemented, than a not-so-well-implemented Ruby software with poor architecture and security holes. As a polyglot software engineer and a startup co-founder here’s the best advice I can give:
- Your Technical Team – Which programming language is your tech team or developer most familiar with? In most cases, this would be the best stack to go with. For example, if your technical team consists of 3 PHP developers and your startup is a, say, SaaS, then go with PHP (I think Laravel is the best).
- The Type of Software – Do your homework and make sure you understand what kind of software you need. Is it only a website or a mobile app? Is it a cross-platform (web + IOS + Android) application? Or, maybe you need a desktop application.. (In case you do, I strongly encourage to consider Electron).
- Fast Prototyping – Ruby on Rails & Django Python Framework are considered one of the best frameworks for fast prototyping. You can literally get a full registration system with multiple entities (user, profile, post, comment, like) in less than a day!
- Fast Computations – Python is so far the best language for jobs that require computations. It’s best for AI & Machine Learning and not only. Python has great frameworks, such as Django and Flask. Flask is a micro-framework: it provides less functionality but more flexibility. Unlike Flask, Django is more heavy: it provides lots of cool features and tools out of the box and is ideal for fast prototyping.
- Real Time Communication – Node.js, or just Node, shines when it comes to real time software (e.g. live chats).
Which one do you use and why?