Oracle FAQ Your Portal to the Oracle Knowledge Grid

Home -> Community -> Usenet -> c.d.o.server -> Re: Career questions: databases

Re: Career questions: databases

From: joel garry <>
Date: Mon, 02 Jul 2007 16:05:26 -0700
Message-ID: <>

On Jul 1, 2:53 pm, dreamznatcher <> wrote:

> I'm really perplexed here. I never on heaven or earth could have ever
> imagined a single word I used could have spawned all this...
> "proficient". Who really cares, anyway, as long as (as Neil points
> out) I (or anyone claiming to be proficient in any particular area)
> manages to get a job done? We're all developers here, some good, some
> bad; but in the end all that matters if we can deliver or not.. and
> how (i.e. timeliness, accuracy, quality, interface, stability..). I
> guess it's the "how" part here in the argument that's raising all the
> hullabaloo.

Actually, we're not all developers here. In cdos (where I'm reading this), the emphasis is on Oracle server technologies, so there are many DBA (database administrator) types. The definition of DBA varies by site, but it is quite often more comprehensive or even exclusive to "super-duper-developer." I won't comment on cdt except to say they are more theory oriented. I'll try not to say bad things about access, though I'm biased against it, the bias mostly consisting of scalability limitations.

In many places there is conflict between developers and DBA's. This often arises because they have different priorities: the DBA is concerned with the integrity of production data, while the developer is concerned with productively creating new applications. There may be separate analysts involved in the process too, depending on the work involved.

So to many DBA's, the concept of rapidly delivering applications in a matter of days is a red flag - it immediately brings up issues of integration. Many of us have had to deal with the effects of uncontrolled developer access to databases, and even messes from giving ODBC access to users. In some places, there have been real messes created by cowboy developers coming up with some completely different interface than everything else, mightily confusing users. There are even times when the new way is award-winning, recognized as excellent by management - and still screwing everybody up, because management isn't really properly evaluating the effect on the organization and it's data, they're just dazzled by widgets.

> Let's be frank and admit that avid developers are more often
> perfectionists than not. We have to be on the top of the game, we have
> to be top-notch; we're constantly striving to the extent of reducing
> or adding a single statement among millions of lines of code for the
> sake of improving the performance, quality and inner beauty (that's a
> vague term to use here, isn't it? But if you would agree the equation
> E = mc^2 is beautiful, you'll probably understand) even by a minute
> bit. Why do we do all this? Why do we eat, sleep, drink and dream
> code? For the last few nights, why am I always dreaming of coding the
> exact block I couldn't because my body refused to remain awake
> anymore? Ever since I've been working on this application, and
> whenever I am ever working on anything, how does my mind always manage
> to slip away from restaurants and people and traffic and fried chicken
> and everything around me, to pure, hard code?

Hopefully, you'll get over it. Most project managers realize they get better work out of people with balanced lives.

> I'm sure all of you have consistently or at least at times experienced
> feelings like these. I don't think it's totally because of the
> constant pressure of clients, or because of the sort of crazed zeal
> some folks in college exhibit in fishing for A's despite their evident
> disregard for practicality and disrespect for proper understanding
> (how on God's earth do some of this bunch end up with great jobs,
> anyway?). To cut a long and tall story short, we're like this because
> we chose to be.
> So adhering to that philosophy, how do you classify proficiency or
> expertise? I can't.There are thousands who fit that bill. By the
> standards many of you have set out, I'm probably not even
> intermediate. But then again I know what I can do and I have the
> confidence that there are areas in which I could beat each and
> everyone of you at your own game.. and that holds true for the
> potential of each and every individual. What really drives the world?
> Being great at syntax in any area -- being the perfect lawyer, the
> meticulous banker, the ambitious actor, the coder who knows every nook
> and cranny of the application -- are great and are greatly appreciated
> in society because such proficiency offers a FORMAT that society can
> read.. predict.. and regulate if necessary.

Being honest about your own limitations is vital for selfimprovement.   Resumes, on the other hand, are marketing tools. Fitting workers to jobs is another whole area of expertise, one that is sadly lacking in the contract arena. I used to think that having expertise in 4 generations of languages plus lots of both formal and rapid design experience would let me get proficient reasonably fast in any new language. I don't think that any more. For an organization to really get a lot out of their employees, they must recognize everything requires training, thought and work. Contracting situations require existing expertise in specific toolsets. So one method for success is to find situations that need a scarce ability, that will subsequently allow expansion and learning. Being able to reduce problems to entities and attributes is a good skill, but needs to be enhanced by being able to communicate both ways.

> There are zillions of people alive and kicking who can know everything
> by the book and deliver flawless code if given the chance... think
> ahead 50 years. Won't artificial intelligence be capable of doing
> that? What good are such "experts" then? If we can and believe to be
> led by the idea that simply delievering according to a set of
> regulations (however big that set might be) proves us "proficient",
> where does the value of knowledge stand? And whatever on earth happens
> to creativity?

When I was a DBA, my general feeling was to give developers plenty of latitude to be creative, and have a series of levels to bring anything written to production quality. Sometimes it worked, other times they didn't get that at all and wanted to do, well, stupid things to the database (if you peruse cdos, you can find many examples of people needing to unlearn non-Oracle ways of doing things). As in so many other things, a couple of years of experience creates "sophisticated morons." There is no such thing as flawless code, and the key to artificial intelligence is the ability to get away from fixed two-mode logic. Whether artificial intelligence will ever get the capability to deliver flawless code is debatable, as is the concept of flawless code, since fuzzy requirements usually have to be involved somewhere.

> I remember a faculty member in our university never allowed closed
> book exams; he argued that if someone can solve a problem in 20 mins
> while it takes someone else 200, it doesn't mean either of the two are
> better. I dare say (and thank God I've admitted my limitations) I know
> far less than most of you about Oracle or just about any language or
> rdbms I mentioned. Fair enough. Now give me a chance: let me learn.

For cdos, anyways, see

> Give me the kind of schooling you get at Stanford (someone mentioned
> Stanford for databases), buy me the software (okay, I'll buy it but I
> don't have a credit card so even if I had the money it would still be
> unattainable) and let me enter a good library (you won't believe this:
> there are hardly 3-4 titles on databases available in this country).
> Then, give me some time (a few months to a few years) and come back.
> I'm sure I won't be a poor challenger. Once again, I'm not bragging
> here. I'm talking about any average Joe here. Just about any guy who
> wants to learn and is willing to work hard. And mind you there are
> millions of such people out there.

Downloads of Oracle Enterprise Edition are free for learning, besides connectivity costs, except in certain parts of the world.

> But what good would I be among such a huge pool of "experts"? True,
> there's plenty of fodder for everyone. And of course I don't intend to
> say experts are useless or unimportant. I started this post, and
> wanted to make a point (which applies to myself and I'm sure it does
> for many others as well): I might not be able to code as well as most
> of you, but I feel I can IMAGINE database-driven applications; I have
> the faith that in a world already crammed with godzillion bytes of
> code I still might be able to tell you of software and programs that
> are yet to be built. Just because I don't have the language to express
> my idea doesn't mean I'm blind or that I immediately fall into a sub-
> standard category. If I can tell what the thing will be like, there
> will be always people capable of building it.
> What I was looking for here was assistance -- making me find my voice
> so that I can transform the vague ideas I have into reality. That
> intention has been partially satisfied with some really informative
> and enlightening posts. I'll repeat my primary message here, as
> trimmed down as possible: I can draw any ERD you'll ask me to,
> probably fast enough to get a few people impressed. What should I do
> with this ability? What should I specifically learn? What job might
> this proficiency... just kidding, ability... get me?

As others may have said, it depends where you are. To focus on design, you need to be at a site big enough to have designers, DBA's, developers, analysts, and so on. There are more sites where one or two guys do it all. The former tend to pay more.


-- is bogus.
Received on Mon Jul 02 2007 - 18:05:26 CDT

Original text of this message