C# and certification

G

GrahamJWalsh

Hi,

I'm about to embark on .NET/C# certification (after 6 weeks intensive
training). I'm actually heading off to India as it's cheaper....sign of
the times. The goal is to compliment my existing c++/java skills and
to enhance my employability (I contract in finance at the moment...I
have work but am planning for the future). As of now I have zero
experience in C#/.NET (I've done some J2EE work in the past but that's
about it:( ).


Has anybody any advice on this matter? e.g. Dont do it, the
certification isn't worth squat! or perhaps "definitely do it, it
opens up so many doors".

Also, right now C# is a microsoft only development environment but I've
heard its being ported to linux. Is that correct?

Maybe this is a "how long is a piece of string" question but I'm
interested in hearing back from people on this group/forum.

thanks and have a nice day.

G
 
J

Jon Skeet [C# MVP]

I'm about to embark on .NET/C# certification (after 6 weeks intensive
training). I'm actually heading off to India as it's cheaper....sign of
the times. The goal is to compliment my existing c++/java skills and
to enhance my employability (I contract in finance at the moment...I
have work but am planning for the future). As of now I have zero
experience in C#/.NET (I've done some J2EE work in the past but that's
about it:( ).

Has anybody any advice on this matter? e.g. Dont do it, the
certification isn't worth squat! or perhaps "definitely do it, it
opens up so many doors".

Well, I'm not certified in anything and it doesn't seem to have caused
me any problems.
Also, right now C# is a microsoft only development environment but I've
heard its being ported to linux. Is that correct?

Not really. There are various projects around for running C# (or rather
IL) code on Linux and other platforms. The biggest of these is probably
Mono (http://www.mono-project.com) but there will always be issues in
terms of how much of .NET has been ported (i.e. the bits that MS has
implemented on Windows beyond the standard) and what the legal
situation is. (Will MS start trying to take legal action against
companies using Mono in the future, claiming it violates patents etc?)

Jon
 
M

Make

Jon, a question for you.
How (or why) did you start learning C# (in MVP level) although you had
a very strong Java background?

I'm just curious. I have also 6 year experince in Java and now used C#/.NET
about 5 months because in that field my company has better job
opportunities.
I'm not suspicious what comes too .NET because I have joined both C# and
Java
and I have also strong MFC background.

VB is not my favourite, that I must admit.

Cheers,
 
N

Nicholas Paldino [.NET/C# MVP]

Make,

It should be noted that there is no such thing as "MVP" level.

MVP is an award that is offered on a yearly basis with a rather
ambiguous set of criteria. The reason for this is that it is something that
is awarded for people doing what they do. They don't want people doing
things just to get the award.
 
J

Jon Skeet [C# MVP]

Make said:
How (or why) did you start learning C# (in MVP level) although you had
a very strong Java background?

The company I was working for was going to start a PDA project in C#,
so I started learning C#. I read a book (fairly quickly) and then did
the bulk of my learning by answering newsgroup questions. (It's a great
way to learn, if you have the opportunity.)
I'm just curious. I have also 6 year experince in Java and now used C#/.NET
about 5 months because in that field my company has better job
opportunities.
I'm not suspicious what comes too .NET because I have joined both C# and
Java and I have also strong MFC background.

C# isn't a hard language to learn, especially with Java experience.
It's the framework which takes longer to learn. The framework is
generally better than Java (partly due to being later - they learned
from a lot of Java's mistakes) but it does have a few things missing.

Likewise C# is generally a nicer language, but I miss some of the Java
1.5 features - particularly the Java enums.
VB is not my favourite, that I must admit.

:)
 
K

Kevin Spencer

Hi Graham,
Has anybody any advice on this matter? e.g. Dont do it, the
certification isn't worth squat! or perhaps "definitely do it, it
opens up so many doors".

It can open some doors, but they may not be the doors you want to walk
through. There are companies out there that put a great deal of stock in
certifications. These types of companies are generally beaureaucratic in
nature, populated with Dilbert types, and if beaurocracy is your bag, that
might be the way to go.

However, if you are a real geek, the best (IMHO) companies don't care much
about certification. They care more about your portfolio. They want to see
what you've done, how you've done it, and are likely to ask you their own
technical questions, as well as look over your code. These companies are
more results-oriented. You're likely to work longer hours, and work harder
for such a company, but the geek rewards are outrageous.
Also, right now C# is a microsoft only development environment but I've
heard its being ported to linux. Is that correct?

Sort of, as Jon pointed out. I believe that Mono will be accepted by
Microsoft, but that's just my take on it, based upon a complex combination
of experience with Microsoft, and my own understanding of Microsoft's
marketing practices. Microsoft wants to promote .Net, and what better way
than a .Net platform for various other OS's? I don't think they are too
concerned that it will somehow cut into their sales of Windows.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
You can lead a fish to a bicycle,
but it takes a very long time,
and the bicycle has to *want* to change.
 
J

Jon Skeet [C# MVP]

Kevin Spencer said:
Sort of, as Jon pointed out. I believe that Mono will be accepted by
Microsoft, but that's just my take on it, based upon a complex combination
of experience with Microsoft, and my own understanding of Microsoft's
marketing practices. Microsoft wants to promote .Net, and what better way
than a .Net platform for various other OS's? I don't think they are too
concerned that it will somehow cut into their sales of Windows.

I disagree. The way I see it, there are two competitors involved: Java
and Linux. If they're more worried about Java than Linux, they'll
promote .NET at the risk of losing some Windows sales. If they're more
worried about Linux than Java, they'll keep .NET on Windows at the risk
of losing some developer mindshare to Java.

Personally, I think they're more worried about Linux than Java, at
least at the moment.
 
M

Mike Schilling

Likewise C# is generally a nicer language, but I miss some of the Java
1.5 features - particularly the Java enums.

If you're willing to build some code-generation features (and integrate them
with your build system), Java-like type-safe enums are quite achievable. (I
haven't done this in C#, but I have in Java, where our target environments
won't let us upgrade to 1.5.)

Covariant return types are harder :)
 
M

Mike Schilling

Kevin Spencer said:
Hi Graham,


It can open some doors, but they may not be the doors you want to walk
through. There are companies out there that put a great deal of stock in
certifications. These types of companies are generally beaureaucratic in
nature, populated with Dilbert types, and if beaurocracy is your bag, that
might be the way to go.

However, if you are a real geek, the best (IMHO) companies don't care much
about certification. They care more about your portfolio. They want to see
what you've done, how you've done it, and are likely to ask you their own
technical questions, as well as look over your code. These companies are
more results-oriented. You're likely to work longer hours, and work harder
for such a company, but the geek rewards are outrageous.

Geekdom aside ( :) ), I wouldn't work for a company that cares more about
familiarity with specific technologies than about knowing how to build
software. Someone who can create reliable, testable, maintainable systems
in Java or C++ can learn how do to the same thing in C# with no
difficulties. Someone who knows C# inside and out but can't program well is
of severely limited value. Managers who don't understand that do not hire
people I want to work with.
 
J

Jon Skeet [C# MVP]

Mike Schilling said:
If you're willing to build some code-generation features (and integrate them
with your build system), Java-like type-safe enums are quite achievable. (I
haven't done this in C#, but I have in Java, where our target environments
won't let us upgrade to 1.5.)

Ironically, I've been meaning to write up a proposal for "class enums"
in C#. I was hoping to do it tonight, but we'll have to see whether I
get time.

There are some lumps around the Java implementation which could fairly
easily be sorted out, and partial types could make some enums more
pleasant to work with. I doubt it'll happen any time soon, of course,
but maybe for C# 4.0...
Covariant return types are harder :)

:)
 
K

Kevin Spencer

Hi Jon,

I would agree, except for Windows Vista. The new OS represents a major leap
forward for the Windows OS, and in fact, beyond any existing OS in terms of
the presentation layer (and a few other things). My guess is that MS is
banking on Vista keeping the market cornered. But I'm only guessing here.
We'll see what goes down when it does! ;-)

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
You can lead a fish to a bicycle,
but it takes a very long time,
and the bicycle has to *want* to change.
 
K

Kevin Spencer

Managers who don't understand that do not hire people I want to work with.

I agree wholeheartedly. My reference to (as you put it) "geekdom" is an
observation that there are many different types of developers out there, and
sadly (IMHO), many of them are in it for the wrong reasons. They want to
make "the big bucks" or "be a professional," but they lack motivation
("geekhood" if you will). While I have long disparaged this sort of thing,
it has become apparent to me in recent years that these types may well serve
some purpose in the development industry, although I neither know nor want
to know what it might be.

Similarly, there are many different types of companies out there. Some of
them are visionary with regards to software. Others are purely beaurocratic,
and need developers simply because they need software to be written. In such
a beaurocracy, which I maintain is not likely to succeed for long, the only
measure known by such managers is certifications, degrees, and other
relatively poor measurement methods. These companies hire people with these
types of "qualifications" all the time. A Dilbert can make a good living
from this sort of employment track, and is probably better suited to it.

I just didn't want to assume that Graham was of one school of thought or the
other! Judging by the thoughtfulness of his question, I would guess that he
is more of a "geek." At least he is intelligent!

Your point is well taken, Mike. That is why I always want to see the
portfolio, the code. Programming is much more than just typing code that
performs certain tasks, just as writing is much more than just typing word
that form sentences and express ideas. Design, organization, elegance, and
architecture are a much better measure of a developer, and these can be
gleaned by looking over his/her portfolio.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
You can lead a fish to a bicycle,
but it takes a very long time,
and the bicycle has to *want* to change.
 
A

Alvin Bruney - ASP.NET MVP

It should be noted that there is no such thing as "MVP" level.

I think his implication was that the tag MVP qualifies a particular level of
understanding based on participation/activity.
MVP is an award that is offered on a yearly basis with a rather
ambiguous set of criteria. The reason for this is that it is something that
is awarded for people doing what they do. They don't want people doing
things just to get the award.

Your answer, while correct, seems to imply the opposite; that an MVP tag
does not prequalify the individual to a particular level of expertise. For
the most part, i'd say that is a false assumption.

--
Regards,
Alvin Bruney [MVP ASP.NET]

[Shameless Author plug]
The Microsoft Office Web Components Black Book with .NET
Now Available @ www.lulu.com/owc
Forth-coming VSTO.NET - Wrox/Wiley 2006
-------------------------------------------------------



Nicholas Paldino said:
Make,

It should be noted that there is no such thing as "MVP" level.

MVP is an award that is offered on a yearly basis with a rather
ambiguous set of criteria. The reason for this is that it is something that
is awarded for people doing what they do. They don't want people doing
things just to get the award.


--
- Nicholas Paldino [.NET/C# MVP]
- (e-mail address removed)

Make said:
Jon, a question for you.
How (or why) did you start learning C# (in MVP level) although you had
a very strong Java background?

I'm just curious. I have also 6 year experince in Java and now used
C#/.NET about 5 months because in that field my company has better job
opportunities.
I'm not suspicious what comes too .NET because I have joined both C# and
Java
and I have also strong MFC background.

VB is not my favourite, that I must admit.

Cheers,
 
G

GrahamJWalsh

thanks Kevin, you gave me the only resonse that actually answered my
question in this thread! :)

thanks for all the other replies as well, its insightful.

cheers

Graham
 
A

Alvin Bruney - ASP.NET MVP

I got about 15 lines deep and wondered - So what is the difference between
an enum and an object with your new proposal? I does seem to me that your
new proposal transforms an enum into a smart object. It blurs the lines
between the two with obvious negative impact. Care to comment on this? If
your docs address that then simply point me to it - i'll cover more of this
proposal as time makes itself available today.

--
Regards,
Alvin Bruney [MVP ASP.NET]

[Shameless Author plug]
The Microsoft Office Web Components Black Book with .NET
Now Available @ www.lulu.com/owc
Forth-coming VSTO.NET - Wrox/Wiley 2006
 
J

Jon Skeet [C# MVP]

Alvin said:
I got about 15 lines deep and wondered - So what is the difference between
an enum and an object with your new proposal? I does seem to me that your
new proposal transforms an enum into a smart object. It blurs the lines
between the two with obvious negative impact. Care to comment on this? If
your docs address that then simply point me to it - i'll cover more of this
proposal as time makes itself available today.

It's not transforming enum. Enum itself would be unchanged. It's
introducing a new type of enum which is a fixed set of proper, bona
fide objects.

Jon
 
J

Jon Skeet [C# MVP]

I got about 15 lines deep and wondered - So what is the difference between
an enum and an object with your new proposal? I does seem to me that your
new proposal transforms an enum into a smart object. It blurs the lines
between the two with obvious negative impact. Care to comment on this? If
your docs address that then simply point me to it - i'll cover more of this
proposal as time makes itself available today.

It's not doing anything to the existing type of enum. However, it
combines the idea of enums (a fixed set of values) and objects (in
terms of behaviour etc).

As one of the comments on the blog says, this proposal doesn't really
do much that isn't available in the language already - it just makes it
more explicit and easier to implement.
 
B

Bruce Wood

Has anybody any advice on this matter? e.g. Dont do it, the
certification isn't worth squat! or perhaps "definitely do it, it
opens up so many doors".

I think that you very much have to understand the market in which your
searching for jobs. Here's a contrast for you.

I once taught a course on C at a local university. One my students was
a 50-something guy who had done all sorts of tech work throughout
Europe and the U.S., and had moved to Vancouver. He told me that
Vancouver was the weirdest job market he'd ever encountered. "In
Europe," he said, "I applied for a job managing an Oracle database for
a large company. I told them that I had done lots of database work, but
never Oracle, and I'd never held the DBA title (although I'd done the
work). 'No problem,' they told me. 'We'll send you on all the courses.
We want you because you come with great references for being an
intelligent, stable worker.' Here in Vancouver," he continued, "I go to
an interview and they want to know not only whether I know Oracle, but
Oracle version such-and-so, as applied to their particular business."

He was right. Here in Vancouver, the first interview you get is often
with HR, and they just have a list of products and version numbers.
They weed out all of the people who can't say in a convincing tone that
yes, they know all about that version of that product / language. The
height of this sort of stupidity was a place I worked at years ago
which advertised for a new programmer. All of us in Engineering had a
good laugh at the job requirements, including "two years' experience
with Sun's NSE" which had been out of beta for six months. I'm sure
that there are places here advertising for people with "minimum two
years' experience with .NET 2.0."

If you're looking for work in a city / country that places emphasis on
character and skill, forget the certs. If you're looking for work in a
place like Vancouver, the silly letters after your name will get you
past the first interview to the people who actually know what's going
on. Know your market, and plan accordingly.
 
A

Alvin Bruney - ASP.NET MVP

Well said.

--
Regards,
Alvin Bruney [MVP ASP.NET]

[Shameless Author plug]
The Microsoft Office Web Components Black Book with .NET
Now Available @ www.lulu.com/owc
Forth-coming VSTO.NET - Wrox/Wiley 2006
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top