Today's class covered some fun things in Java like abstract classes, extending classes, and the very cool (to a person used to awk) interfaces. I can see lots of uses of the above for dealing with my project to bring old-school Creative Computing games to the masses once more :).
And then we got to Extreme Programming. I will say that the professor did preface this part with saying that it wasn't as great as the hype and like any religion, you have to be careful of the zeolots.. and I do like the basic ideas behind it (which are much like any philosophy):
- Respect for the code, programmer(s), and customer
- Focus on communication between the above.
- Simplicity of Code
- Continual Feedback
- The Courage to Continually Change
And then we got to the 'practices':
- Test Driven Development
- Continuous Integration of Code
- Clear Coding Standards
- Collective Code Ownership between programmers and customers (as in no code is untouchable just because XYZ developer wrote it).
- Pair Programming
Number 5, is where I see the insiduous plot against autistics.. getting us to communicate to a customer at all is hard enough, having us let someone else type while we watch is like torture I say this because during the lab, I either wanted to do all the typing myself or tell the other person what to type (which of course endeared me to my partner). And since our grade was a joint one, my partner is stuck with the lowest grade (we were told we shared the least from the observations). Oh well, I hope he doesn't get stuck with me again.
On my other tasks, I am still going through the DOD Unix STIG to see what is needed to bring a CentOS- X.X EL system to meet it...