He also postulates that programmers today need to have a better grasp of the advanced math that underlies system theory and algorithms. Indeed, today’s popular Agile approach to software development may exacerbate jumping into code. The Agile methodology advocates building something in a short sprint, getting it to a user base to hammer on it and get feedback, fleshing it out, and iterating that until you have a finished product the users accept. Market pressures also sometimes contribute to companies building new features into systems that millions of people might use and become dependent on, but without adequate testing or understanding the full impact of that functionality on the rest of infrastructure they ride on.
If we’re going to be so dependent on software, we’ll need to make sure we understand what it’s doing.
Software is Increasingly Complex. That Can Be Dangerous. (cache)
It’s interesting how agile rituals are about daily feedback, team building, you name it but none of them are dedicated to take a step back and think together about what we are achieving. Not in terms of users’ needs or velocity or stakeholders or personal gripes but related to how we feel about the product and its political implications.
Are we really heading toward the world we want with that piece of code?