There is a huge difference between compiled languages and scripting languages: the former are first entirely compiled and then executed, the latter are interpreted as they progress. I will use this terminology to discuss two types of protocols: the more common is made up of readymade messages or methods; each message type indicates a predetermined course of action. The less common type, and one I think deserves more attention, sends messages made up of many simple commands that do very
(read more...)
By Ran Arad | May 27th, 2008 | Filed under Standardization
I’m in the process of recruiting a programmer for my team, during which, I started to ask myself, what are the definitive qualities required from a protocol programmer. You might say, anyone could be a protocol programmer, or you might say, anyone can learn to be a good protocol programmer, but let us assume, for the sake of discussion, that there are some personal qualities for a great protocol programmer. What are they? Let me offer my ideas: Attention
(read more...)
By Ran Arad | February 26th, 2008 | Filed under SDKs
API design is tricky. You have to constantly answer two opposite questions: How can I let the user do anything he would like to do? How can I make things simple to use? Flexibility causes complexity, simplicity causes rigidness, right? Wrong. Take the void pointer for example. The void pointer can point to anything, so it’s flexible, and it is very simple as well. The same can be said for Java interfaces or C++ container classes. Or take
(read more...)
By Ran Arad | February 4th, 2008 | Filed under SDKs