Bad developers can only use higher level libraries, while good developers can write those.