Becoming a free software developer, part III: Programming for the impatient | Free Software Magazine