To be a competent computer programmer, even for relatively simple web-based programs, you have to be able to break down a complex problem into small, manageable pieces. That’s a career skill, a life skill, and it’s something that programming forces you to do if you want to get any good at it.