Saturday, February 25, 2012

"Refactoring"

It took me a long time to settle on a title for this blog - naming things has always been a particular challenge for me.  But I'm happy with my current title, and it embodies an approach that could be quite successful at achieving our goals for the educational system.  But what is that, you may ask?

Refactoring is a term for an increasingly common practice in programming.  It involves revisiting already written software code and incrementally rewriting it in a cleaner, more readable fashion, applying good programming and documenting processes along the way.  The point of refactoring isn't to add new functionality to the software - it's simply intended to make the code more readable and understandable so that any future additions and maintenance will be easier to do.

Any programmer who has worked with a large project can attest to how, as a code base grows, it gradually becomes less and less readable and increasingly complex.  There are a number of reasons for this - the rush to get a part of the program functional for a deadline, new features added to the design that hadn't been a part of the original specification, and even a realignment of the design when it becomes clear that the customer's need is actually different than was first expected.  Further, different programmers tend to each have their own "style" of writing code which may vary greatly from programmer to programmer, and most software projects are developed by teams of programmers working together.

The Education Reform movement is in a similar situation - we have a plethora of new approaches and strategies for better educating our students that have been developed by reformers across the nation.  But it isn't yet clear how to bring those various strategies together.  Each has been developed by a different group, and uses different approaches.  Even the terminology isn't held in common.  And most importantly, a common direction for institutionalizing these techniques so that they can be readily adopted by non-experimental schools has yet to be made clear.  

That's where refactoring comes in - we need to start taking these reform strategies that have already been developed, and proven effective, and repackage them in a way that can readily be adopted by your average public school while minimizing the chaos that such a change would cause.  And do so within the budget and reporting constrains that our schools currently face.  This task will be the focus of my research as I work towards a Ph.D. in Curriculum and Instruction, and the primary focus of this blog in the years to come.


No comments:

Post a Comment