Jim is a medieval diminutive of James. James is ultimately derived from Jacob. Jacob is derived from the Hebrew name 'Yaakov', which means 'following after'. This is derived from the Hebrew words 'Yahweh', which means 'God', and 'aqeb', which means 'heel'. In the Bible, Jacob was born after Esau, holding after Esau's heel.