Being the age I am, and given the training I’ve received, Object Oriented is really the only way I know. Another way to program was never an option for me. Now the semantics of which language is and which language isn’t is immaterial here. C and C++ may not be purely OO languages but you still use them in an OO fashion. All (err most) of the OO principles are there: inheritance, abstraction, and even polymorphism. But I have recently, with my current job, run into a dilemma. What if a language, despite the ability, really shouldn’t be used in a OO fashion?
My problem stems from PL/SQL. We have an interface between two databases at work written in PL/SQL. So far so good. The problem is though is that the interface is written in such a fashion that, along with Oracle’s massively helpful error messages, it is almost impossible to debug quickly and easily. And as far as I can tell, it all stems from the OO fashion in which it was written. Now, unlike most modern languages, there is very little OO in PL/SQL as far as I’m concerned. You have encapsulation and modularity, but I don’t see much abstraction for example. It appears to me that despite Oracle’s best efforts their attempt to make PL/SQL OO have been (overly) appreciated but not worth it. Whats wrong with old fashion procedural programming? What do I even need OO for with PL/SQL? I have a massive data set that needs to be worked. I need to filter through it, pull what I need, discard what I don’t. And then fill a table with what’s left. Not hard. Do 1 then 2 then 3. Even when written in English (as opposed to code) it’s all very un-OO.
If you want specifics I can elaborate in another post. For now though I need to wash and wax my car.
Enjoy the Penguins!
Do you ever get tired of putting a lot of effort in to Linux? Get tired of waiting for things to compile? Grow wearing of trying to figure out why something fails to compile?
I do. Right now my computer has, of all things, Fedora 10 on it. Why? Not because it’s awesome, that’s for sure. Though if you have to go precompiled, easy to install, and easy to use, it more or less tops the list in my book.
I don’t know. I love Gentoo, and though I haven’t tried it yet, I’m sure the distributional offspring of paludis, Exherbo, is a wonderful setup as well. It’s just that sometimes I don’t care to tinker anymore. I don’t want to configure. I don’t want to setup. I just want to turn it on. Know it will boot. Use it. Then turn it off. Sometimes I don’t even care if GCC is installed. Just let me surf the net.
Yet, at the end of the day, I feel guilty for this. It’s almost as if I have betrayed myself by succumbing to my lazy whims. Linux has become as much of a constant work of art for me as much as it is a toy or even just a tool. I feel compelled to not just use, but to improve. For me “improve” rarely means code. I spend all day at work writing PL/SQL…. hardly something that translates into FOSS. I’m currently writing a program in C. But it is slow coming. I admire people who write these incredibly complicated programs seemingly in their spare time. I assume that most of the creators and major contributors to paludis have full time jobs. I know some of them do. I consider a full time college student a full time job too. I work 40 hours a week. I come home tired. Ready for a nap. It’s hard for me to fire up the desktop or even open the lid on my Mac and start programming. It’s almost to the point I’d rather donate money than code myself…
Enjoy the Penguins! (especially if you write them)