Every once in awhile I hear people arguing about what is the best platform and programming language to build their Minimal Viable Product (MVP) to bring their idea to market. They wonder what they should use, “Magento vs. Spree vs. WordPress vs Drupal vs Joomla vs Django vs Custom code and/or any number of frameworks in PHP, Python, Rails or Node.js”. For the aspiring tech entrepreneur, CTO, CEO or new developer the choices can become overwhelming, but it really is alot simpler than it sounds.
For the first year, you are pretty much testing the market and learning about your customers. So as an entrepreneur and/or CTO, what do you build your Minimal Viable Product to bring it to market?
I’ve always believed that a clear business objective and a clean simple architecture is what is more important than the language that you code in when you are creating your initial MVP. Sure, of course I agree that some technology is better than others for doing certain tasks .. but having good coding habits and giving clients what they want and need, on time, is much more important than using a specific programming language or framework. There’s also something good to be said about the security of a homegrown application since you have control of its contents. Fact is, while you are building out your initial product, that its all about the business goals and delivery and rarely about the technology. Build your base UI and main application engine on a proven platform that already has a large community of users to help you keep that part of your business stable while you build your business. Then, after you have that strong foundation, add in your custom coding and components to enhance the existing platform and provide the special sauce in the front and backend that makes your business web application better than others.
Magento is built for ecommerce. Ebay bought them back in 2008 because they recognized this. I see so many people literally spending millions of dollars building a website from scratch in PHP, Node or Rails before they even know what business idea works best and what their customers want.
If you go are going to go ahead and build a fully customized solution without testing the market, well then you are sure to lose alot of your money. On the other hand, if you leverage open source components and application platforms then you will certainly save your money … and you just might save your business too. Even if its just for your first year, don’t build it entirely from scratch … just get the product out there.
Here’s my rule of thumb … when you first start off your business online,you can get away with something as simple as an inexpensive WordPress blog with a few e-commerce based plugins. If you’re into PHP and want to build a robust high traffic full marketplace solution then use Magento. If you prefer Rails then use Spree Commerce. And if you are going to deploy a content rich website across many different editors with multiple websites that share common themes and components, well then use Drupal.
I once heard someone say “You use WordPress to build a blog and you use Drupal to build a WordPress”. I say… “Use what you need to use now… and get it done!” Build your custom solution on top of a proven platform and then after you launch, then you can start making more custom improvements based on observations of what your customers want … and if you need to, once you have built that audience… then and only then, you can look into building a custom platform from scratch.
The “Build it and they will come” mantra only works if you know what “they” want. And well, you’re not going to know what “they” want until you get out there and get feedback in the real world. So spend your money wisely and focus on the value added features in the beginning. I promise that there will be plenty of work for you and keep you busy enough without having to spend your time and money creating something like a custom blog solution that is better than WordPress or a custom Rails commerce solution that is better than the Spree’s proven Rails e-commerce solution … plenty of time for that later on when you know what works for your customers.
Also, you can leverage existing infrastructure services from a cloud based provider like Amazon Web Services or Rackspace and you will save tons of cash that you can put towards adding all those custom coded features down the line when they are needed to build your business!
Are you ready to get started today? Let me know if you have and questions and check out Amazon Web Services offer for free 12 months of starter services at: https://aws.amazon.com/free/ along with the following links to learn more about some great places to get started building your MVP:
Rails Spree Commerce: https://spreecommerce.com/
PHP Magento: http://magento.com/
PHP WordPress: https://wordpress.com/
PHP Joomla: https://www.joomla.org/
PHP Drupal: https://www.drupal.org/
Python Django: http://www.django-cms.org