How to Have Machines “Speak” and Communicate Between Them