Click to See Complete Forum and Search --> : What direction?


Kirk
02-26-2001, 01:27 PM
I have 3 years professional programming experience with mainly Microsoft products.
Unfortunately these products do not include any truly object-oriented languages
such as C++. I love to program and I in no way favor any particular product
as long as its challenging and productive. Over the past 3 years I've been
sort of trapped down the VB path with some later web development, not that
I don't like VB, its just not a "hardcore" language object-oriented language.
So now I wish to take on a true object-oriented language. I've studied
Java in my spare time and I've been educated extensively in object-oriented
design, however, I have no real experience in Java. It seems to me that
with this lack of experience in Java, I would have to take an entry-level
job in order gain any real worth in this area, thus accepting a major pay-cut.
Is that how this industry works, you devote your time to one line of products
and that's it, you're stuck unless you go backwards and start over? Do I
just wait for .NET and build on that committing myself to Microsoft forever?
Is there a path a person can take to maintain their worth in programming
while expanding his or her knowledge and experience in other programming
languages?

Elena
02-27-2001, 09:10 AM
I have shifted platforms many times in the last 20 years and I can tell you
it is ALWAYS a hard sell. Yes, you'll be treated like an ignorant newbie.
Yes, you might take a salary hit. Or you might get lucky and find an employer
that works WITH you to migrate to new platforms. (It's rare, but it happens.)
If you stay on the technical side of things, that's just the way it is.

First, you have to decide what type of work you want to do. If you are borred
with VB, then by all means pursue another language. There are no magic formulae
for migrating to other technologies. The only rule is you need to be offering
the employer something else besides your lack of experience in Java. If
you are an expert in database analysis and design, if you have strong business
analysis skills, you've done project management, or some other more advanced
skill, then you can present yourself as something beyond the entry-level
wannabe and your chances improve significantly.

And personally, I don't give a crap if some C++ programmer wants to make
himself feel superior by telling me VB is "not a real programming language"
or some other bullshit. I work in business applications. The CEO doesn't
care what programming language I use. If I solve the business problem with
VB or Java or C++ it makes no difference whatsoever so long as I do it in
a cost effective and timely manner and the product can be supported in the
future. From a technical viewpoint, it's best to find the right tool for
the right job and I don't happen to think C++ or Java are the right tools
for EVERY job. But there's no point in getting into that debate because
a lot of people can only see things "their" way. (Unix people look down
on Mainframe and NT people, C++ people look down on VB people, Oracle database
people look down on DB2 and SQL Server people, and on and on.)

So keep an eye on the employment prospects but don't lose sleep because of
someone else's bad attitudes.

David K.
02-27-2001, 08:01 PM
"Kirk" <darren_behl@hotmail.com> wrote:
>Over the past 3 years I've been
>sort of trapped down the VB path with some later web development, not that
>I don't like VB, its just not a "hardcore" language object-oriented language.

Kirk, have you read about the next version of Visual Basic, VB.NET? If not,
you may want to check it out before you start over with Java. THe new version
of VB adds a lot of features which make it "more" object-oriented. Some
VBers don't like the changes, but since you are complaining that it is not
a "hardcore" language, you may like the new version. Also, because you already
have 3 years of VB experience, you can leverage that experience in the VB.NET.


>It seems to me that
>with this lack of experience in Java, I would have to take an entry-level
>job in order gain any real worth in this area, thus accepting a major pay-cut.
> Is that how this industry works, you devote your time to one line of products
>and that's it, you're stuck unless you go backwards and start over?

It seems like it, doesn't it? Personally, I think it's B.S. that you should
be put back in the pool with entry-level people when you change tools, but
that seems to be what happens a lot of times. There are some things that
you can do to help yourself:

1. See if you can incorporate your "new tool" in your current position.
That way you can get the "work experience" that employers seem to look for.

2. If you can't do 1. with your current employer, see if you can find a position
that uses your old tool, but where you can use the new tool as well. For
instance, a company that is looking for somebody who can "convert" code from
the old tool to the new one. That way you can leverage your current skills
and still gain the experience you need.

3. Sell yourself. After working for 3 years, you've probably learned a lot
of things that are transferable from tool to tool. Things like development
methods, coding practices, testing practices, documentation writing, etc.
When you communicate with your future employer, point out that you have
valuable experience that sets you apart from the usual entry level candidate.
In my experience, it's the non-tool-related skills that separate the great
developers from the poor ones.

>Do I
>just wait for .NET and build on that committing myself to Microsoft forever?

I guess that's up to you. Remember though that going with Java means that
you are committing yourself to Sun. It's a case of "picking your poison".

> Is there a path a person can take to maintain their worth in programming
>while expanding his or her knowledge and experience in other programming
>languages?

See 1.-3. above.

Patrick Ireland
03-01-2001, 02:02 PM
Kirk,

I have been a programmer for 35 years. The comments of this post and the
others are very appropriate. You must not let yourself become stale.
I don't know were you are located (I'm in Dallas, TX) but if available
check out the continuing education at commumity colleges and universities
in your area. Over the years I have continued to update my skills and
will continue to remake myself. I have been a consultant in Dallas for
22 years and can image allowing myself to be trapped in a single language.
On several occasions I have used a new untried tool (language) to
accomplish a task so that I could obtain a higher ability with the tool.
I use VB as a frontend GUI and write C/C++ DLLs to implement business
logical. That allows me to combine skills. I've been lucky in that I
have had may opportunities to advance my skills beyond knowledge only
with the client paying the bill. With time and careful choices you too
can expand you skills.

Good luck,

Pat


"Kirk" <darren_behl@hotmail.com> wrote:
>
>I have 3 years professional programming experience with mainly Microsoft
products.
> Unfortunately these products do not include any truly object-oriented languages
>such as C++. I love to program and I in no way favor any particular product
>as long as its challenging and productive. Over the past 3 years I've been
>sort of trapped down the VB path with some later web development, not that
>I don't like VB, its just not a "hardcore" language object-oriented language.
> So now I wish to take on a true object-oriented language. I've studied
>Java in my spare time and I've been educated extensively in object-oriented
>design, however, I have no real experience in Java. It seems to me that
>with this lack of experience in Java, I would have to take an entry-level
>job in order gain any real worth in this area, thus accepting a major pay-cut.
> Is that how this industry works, you devote your time to one line of products
>and that's it, you're stuck unless you go backwards and start over? Do
I
>just wait for .NET and build on that committing myself to Microsoft forever?
> Is there a path a person can take to maintain their worth in programming
>while expanding his or her knowledge and experience in other programming
>languages?