Impact of self-driving cars

For past few months, self-driving cars and trucks have been in the top line of the tech news. It is definitely going to be the biggest leap in the history of mankind.

First time in the human history a fully automated system going to live side by side with general human society. This is going to be challenging and revolutionary because till to date the automates systems usually work with humans in highly controlled environments like factories where the system can predict what is going to happen. Now the time has come that automated systems like a self-driving car can live in harmony with human beings in an uncontrolled environment and systems can adapt to all the changes that humans are going to make in real time.


Outsource your development or hire a full in-house team?

The best possible option is to go with a hybrid model. Initially, you can start with a complete offshore team who will do the development for you. Once you have your Minimum Viable Product (MVP) and released the version 1 to the market start thinking of adding resource at your end. The assumption is that once your MVP is available in the market you start getting revenue or you can demo the product to an investor to get the money. This will give you some fund from which you can use to rent out spaces and start hiring resources. Once you start hiring let the on-site team slowly take the ownership of the product and start driving it. Gradually grow your on-site and offshore team in such a way that all the architects and product owners are at the on-site team and the real workforce team is at the offshore.


PHP Code review checklist

I love to do code reviews because it gives me chance to see how other people write code and improve mine also. I have seen many people who are afraid of doing code review. Which made think of creating a code review checklist for PHP. Please note this is not a full checklist for code review and following all the conditions in this will not end up in a great code. But following this will end up in code that can be maintained by others in the later stage of code development.