At work right now, I am creating language learning materials with the overall goal of researching best practices for creating learning materials that are easily distributed and usable in a variety of contexts. We are currently working on an online Arabic language learning course. With over 500 pages of instruction and activities, maintaining and updating the code can be quite tedious.
I woke up Monday morning with a bright idea, and by the end of the day had a simple example to show my boss. I took a sample exercise, and instead of storing it in a web format (HTML), I stored it in a very generalizable format (XML). I then wrote up a set of general instructions for how the exercise should look and how the user should answer the questions.
If all of the activities in the course were stored in this way, they could all use the same set of instructions. That way, if there came a time that we wanted to change the way the user answers the questions, or change the way the pages look, we would only have to edit the one set of instructions, instead of the 500+ pages of instructional content.
So, in other words, I'm learning some awesome things at work and having a blast. Even though language learning has little to do with my major, the concepts will help me a lot in my career.