Molly's Musings is for the random thoughts in life--some really deep, others very. . . Molly's Musings are meant to get you thinking, laughing or, preferably, both. If you leave this page feeling offended. . .well, you need to open up your mind a little and work on your sense of humor now, don't you? :-)
I majored in computer science in college--not only getting a BA in computer science, I also got my MS in computer science. I took about every theory class available and at the time while I was in school, I wondered if I would ever use any of it on the job.
Of course I've since realized that all of those theory courses that I took helped me in my thinking when approaching different computer problems while on the job. The funny this is that during school, it was hard to understand these new concepts but now they're natural to me.
There are some things that I run into once in awhile that make me laugh when I realize it's the first time in my professional career that I'm applying the concepts learned in school. I've been working in the IT industry for over 13 years now and yesterday at work was one of those rare times when one of the hard concepts discussed in the early years of school was actually applied on the job. The concept was "recusive functions."
Without boring all of you, a recursive function is reapplying the same formula or algorithm to a number or a result in order to generate the next number or result in a series (I took this straight out of my dictionary--that difinition was better than me trying to explain it:-) As a programmer, one of my goals to write code in such a way that I'm reusing code instead of typing in the same code all over the place. With recursive functions, things can get a bit tricky as you have to design it in such a way that you avoid an infinite loop (that's when it keeps working on the same result with nothing changing and the program hangs).
It dawned on me that life is a lot like a recursive function. A lot of times we keep doing the same things which result in the same mistakes (a seemnigly infinite loop) but sometimes, we alter just enough to change the result each time and we ultimately solve our problem--a recursive function that ends with the desired result.
Until next time.