Continuous interaction and collaboration rather than fixed time and schedule meetings

Working over the years in the Information Technology industry I have learned that face to face interactions lead to success in delivery and innovation which are the important areas in this industry.

But this is the result of imperfect interactions from a distance. For this let us analyze what is a successful interaction:

  1. Successful interactions for good delivery and innovation are continuous in nature and not just fixed hours per week/day/month
  2. If we restrict ourselves to a very fixed schedule say every week or month we come with a very specific preset agenda and miss out on human emotions, behaviors, motivations and so on which also have a big role in success for delivery and innovation
  3. Face to face meetings add on top of the set agenda an aura of informal interactions around friendship, relationship, behaviors, emotions, motivation, what we like / dislike, etc.

To augment this from offshore for countries like USA & Europe and remove the disconnect better way would be to have continuous interaction.

Connect boardrooms, developer areas, testing team rooms, agile rooms, finance rooms, operations room via video conferencing and audio with a view of full team and area on live and continuous basis. Once you do that you remove the fixed agendas and schedules of meetings which cut out the soft side of human behavior, etc. which is only visible in a face to face conversation. This disconnect of fixed schedules and fixed time meetings can be overcome by continuous interactions. We already have continuous integration for delivery teams and AGILE as a model for delivery. Taking it to the next level would be continuous interaction between offshore and onsite.

Unified theory to solve problems around us

An interesting area of research to solve problems around us could be to find the universal parameters, equation and working of matter which will work across universe. If we can find one universal equation for behavior of all particles in universe we could theoretically understand working of all events, matter, space around us across time – no matter whether they are naturally created or created by us artificially. In the end as per me chemistry and biology form out of physics. And mathematics is simply quantification of physics.

Researching a universal equation which gives understanding of physics and matter across us no matter what shape, form, state they are in could give us solutions to solve things like:

1. Why things break or form?

2. How to make aircrafts, cars, fuels, transportation, medicine better?

3. How to simulate many of the problems happening around us?

All this can and is probably being researched now using super computers around us and will be an interesting area to take further ahead.

As they say in Star Trek – To boldly go where no man has gone before. 🙂

Visualization

Visualization in the digital world is an important area often ignored by techies. Visualization in traditional sense of user interface / user experience / mobility for systems and applications has now long been considered an important area.

But another interesting area to look at in visualization would be internet and understanding universe both – yes I am linking both. With petabytes of data/information now on internet and machines with GBs of RAMs and Octa-core CPUs now common place there is an information overload. If you compare the information being generated every year by internet and computers it’s not something that probably a human being could go through in his/her life. Same is the case with the universe, every year we are finding new areas of unexplored universe with new galaxies, stars, planets, etc. An example: The Great Attractor

To understand and process so much information for a normal human brain at current capability does not seem possible (debatable but that’s my view point).

What we need is a little help from visualization and using something like a dimensional / visualization helmet of virtual reality type. Fighter pilots have helmet mounted displays and we need something similar that processes lot of information from internet and universe which could come from multiple dimensions say 5/6+ (more than four dimensions is difficult for us to understand: time, x, y and z axis, etc.)  and parses through petabytes / zetabytes of information and presents it based on normalization for  our senses.

Formula for Successful Innovation Driven Companies in IT industry

There are many formulas to build a successful company:
1. Passion
2. Great investors and board with good mentors
3. Great product
4. Niche skills and services
5. Great legacy
6. Recruit the best, train them, mentor them, give them good career growth, etc.
And so on

But one that I have observed and learnt is another one. We won’t go into the discussion about the earlier ones given above but let’s look at another way to build excellence.

Excellence and innovation is driven by freedom, creativity, knowledge, skill and right intervention by management with positive re-enforcement, promotion of good attitude and removing the bad apples at the right time.

One of the primary enablers for this is less internal friction and a culture to deliver excellence, promotion of passion to perform and learn without unnecessary hindrance.

One of the best ways to do this is to find people in your core teams to go into the non core functions over time willingly and on their own. These people can build a culture that appreciates the problems of the majority core function employees.

An example, if you over time promote in any Information Technology company your core development/product team members via training, education, etc. into Finance, HR, Project Management, Support, PMO, Legal, Sales and other departments you will build a company that appreciates the problems that the core function faces and they will help/enable them which in turn results in innovation and culture of synergy with excellence.

This is not the only formula out their to build a great company but one of the many ways. Only when we perform as one unit do we succeed most of the times, don’t we?

Architecture design

One mistake many make while building architecture for any application / system is to build the architecture using best/latest technology in isolation.

Architecture design has to be mapped to the use case and requirements.

Areas listed below and more should be considered while making design for the architecture:
1. NFR (Non functional requirements)
2. Security
3. Groups/roles/etc.
4. Integration
5. Use case
6. Information processing, etc.

All of the above and more should be considered upfront and consideration should not just be given for the best/latest technologies. Unless for example we consider how many users will use the system, which type of information exists, what are it’s updation rates, etc. who will access the system with what rights, what scalability is needed, how fast will the system change, what are the uptime requirements, etc. we can’t build the right system.

All of the above should be covered right from design and appropriately data should be partitioned, security design should be built, scalability should be thought of and issues like groups/roles/users, identity and access management should be mapped to the use case or the requirement.