473,772 Members | 2,292 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

The Demise of C#

About 2 years ago, and as recently as perhaps 1 year ago, I can recall
seeing many posts about what language to use with ASP.Net. The consensus was
that employers paid more for C# programmers, and it seems that C# became the
darling of the ASP.Net crowd.

In the meantime, I have observed an interesting phenomenon. Originally,
employers hired programmers who used C# because it was based on C, and the
prevailing opinion was (and may still be) that C# developers were better
because they must have known and/or practiced C or C++ at some time, which
would make them better programmers overall. C and C++ are hard-core
programming languages compared to VB.

However, now that nearly everyone has jumped on the C# bandwagon, it seems
to me that the distinction between the languages has nearly disappeared, at
least in terms of evaluating programmers for hire. There seem to be almost
as many clueless C# developers out there as VB.Net developers. Many C#
developers today are basically VB.Net developers using a different syntax. I
wonder if the employers have become aware of this trend?

--

Kevin Spencer
Microsoft MVP
..Net Developer
Neither a follower nor a lender be.
Nov 19 '05
132 4891
On a further note, I know many C# and VB.NET programmers, and many are very
good at getting a small-scale application job done. However, most of these
guys don't know the first thing about efficient design. They don't even
separate the logic processing from the GUI code, and rarely design new
classes or functions that aren't already required by the form designer.
Nov 19 '05 #111
Also, with regard to .NET in general with its various languages, I think the
language variety really isn't the big thing it's hyped up to be, as people
have mentioned here. The languages are practically the same save for some
minor syntactic differences and some variations in what's allowed (implicit
dynamic binding in VB.NET as well as global functions).

To me, I like having both VB.NET and C#. I prefer VB.NET when I'm lazy, and
the globals are nice for small-scale GUI applications as opposed to just
emulating globals through a class with static (shared) members. C# is nicer
for larger scale applications as it has a lot more safety checks in place.

Still, those two should be it. It requires Microsoft to put a lot of extra
effort to create documentation for both VB.NET and C# and Managed C++ and J#.
They should at least cut out the documentation for a couple of these, as they
are all basically the same thing, and the learning curve doesn't vary much
(even with VB.NET, you still have to learn about classes, inheritance,
polymorphism, static binding, dynamic binding, and probably template-like
generics in the upcoming version, as well as all the .NET concepts - it's
really not any easier than C# save for some really minor syntactic
simplicities and slightly looser rules).
Nov 19 '05 #112
I wish I could edit posts, as I keep thinking of new things to say.

With experienced C++ programmers not being as suited for specific .NET tasks
like developing with ASP, I think a lot of that has to do with the fact that
most C++ programmers have a history of working with platform independence. To
become fluent in .NET, you really need to become intimate with the .NET
platform, and a lot of these programmers don't like being restricted to a
single platform, especially when working with such a high-level,
heavily-layered architecture where the underlying system isn't even
recognizable, especially when you consider the rather bulky and limited
design of the .NET framework library.
Nov 19 '05 #113
> I accept that sometimes unmanaged code is needed, but when performance is
vital surley it would be better to use something like C++ to write the
unmanaged code as it is faster than C#, and if you did then VB.Net or C#
would be able to use the unmanaged code.
What I'm referring to is unsafe code blocks, which you don't code in C#. You
write it in C/C++, INSIDE a C# app.
--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

"Alan Smith" <Al*******@disc ussions.microso ft.com> wrote in message
news:36******** *************** ***********@mic rosoft.com... Hi Kevin,

I am not exactly sure of your meaning with the mechanic analogy, it sounds
as though you mean a good programmer would always use the appropriate
language but the choice of language is not always up to the programmer.

I accept that sometimes unmanaged code is needed, but when performance is
vital surley it would be better to use something like C++ to write the
unmanaged code as it is faster than C#, and if you did then VB.Net or C#
would be able to use the unmanaged code.

"Kevin Spencer" wrote:
Well now, Alan, don't push your luck! ;-)

I would prefer not to get into details, but what you described, while
emulating a pointer to a small degree, is far from actually USING
pointers.

I will simply reiterate: There are times when unmanaged code is
absolutely
necessary. Thankfully, they are not often. Still, I prefer to have that
option when I need it, which is apparently a good bit more often than the
average.

A good mechanic has a machine shop. While a good mechanic would generally
prefer to buy pre-built parts, there is the occasion when the mechanic
must
use the machine shop to build a custom part. A not-so-good mechanic has
no
machine shop, and has no knowledge of how to use one. Therefore, he has
to
pay someone to build his custom parts. And if the custom part doesn't
work
as advertised, the not-so-good mechanic can't fix it, and has no recourse
but to replace it with another custom part from some other mechanic.

You think the CLR was written in entirely managed code? Think again.
After
all, if unmanaged code was never necessary, Microsoft could have saved a
good bit of money that was spent allowing for it.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

Nov 19 '05 #114
> And by the way I was at a VS.Net usergroup meeting sponsored by a local
head
hunter last week. There were a number of companies represented all looking
for ASP.net with C# and not one for ASP.net VB. Someone in the crowd asked
if
they were seeing any employers asking for VB.net and the answer was an
emphatic no.
I think I'd steer clear of THAT group of employers. Sounds like a bunch of
monkey-see-monkee-do Dilberts.

But your point is well-taken!

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

"Dave McNulty" <Da*********@di scussions.micro soft.com> wrote in message
news:2D******** *************** ***********@mic rosoft.com...I am a Basic developer turned VB Developer turned VBscript / ASP developer
and now because my company wants a homogeneous code base I have turned C#
developer. I have been developing web sites since before the Web when they
were just text based sites over the ARPanet that ran in browsers such as
Archie and Veronica. To make a long story short now that I am developing
in a
true OO environment utilizing a language like C# I will never turn back,
not
because it is harder but because it is actually easier in many ways.
People
always talk about C and C++ programmers like they are on the top of the
food
chain as far as programming. As web developers we have to be proficient in
a
number of languages. If we came to work everyday and wrote the same code
with
the same syntax hell we'd be really good at it too. As it stands I think
anyone who makes the switch from VB to C# will experience exactly what I
am
experiencing. Once over the learning curve it is in my opinion much easier
to
code in.

And by the way I was at a VS.Net usergroup meeting sponsored by a local
head
hunter last week. There were a number of companies represented all looking
for ASP.net with C# and not one for ASP.net VB. Someone in the crowd asked
if
they were seeing any employers asking for VB.net and the answer was an
emphatic no. So wether or not VB is good to bet your career on is up to
you,
as for me maybe corporations are a bit misled but it is the common
perception
that C# is better than VB and you know what they say, perception is
reality.

"Kevin Spencer" wrote:
About 2 years ago, and as recently as perhaps 1 year ago, I can recall
seeing many posts about what language to use with ASP.Net. The consensus
was
that employers paid more for C# programmers, and it seems that C# became
the
darling of the ASP.Net crowd.

In the meantime, I have observed an interesting phenomenon. Originally,
employers hired programmers who used C# because it was based on C, and
the
prevailing opinion was (and may still be) that C# developers were better
because they must have known and/or practiced C or C++ at some time,
which
would make them better programmers overall. C and C++ are hard-core
programming languages compared to VB.

However, now that nearly everyone has jumped on the C# bandwagon, it
seems
to me that the distinction between the languages has nearly disappeared,
at
least in terms of evaluating programmers for hire. There seem to be
almost
as many clueless C# developers out there as VB.Net developers. Many C#
developers today are basically VB.Net developers using a different
syntax. I
wonder if the employers have become aware of this trend?

--

Kevin Spencer
Microsoft MVP
..Net Developer
Neither a follower nor a lender be.

Nov 19 '05 #115
I think I'd steer clear of THAT group of employers. Sounds like a bunch of
monkey-see-monkee-do Dilberts


Kevin, aren't all employers?
This is representative of the Denver IS employment market. I don't think I
have met a management team yet in my 10 + years as a programmer that I
haven't thought were total morons when it comes to technology. Until more
tech types decide to take the management track I think this cravass between
the knowledgeable and the ignorant will only grow. It is unfortunate but it
is the reality.

I think the big picture here is that the .Net runtime is supporting many
languages and hopefully we will see a sparkle again in the eyes of Cobol,
Delphi, VB, and other languages the runtime supports as the powers that be
come to realize that they all have their place.
Nov 19 '05 #116
> Kevin, aren't all employers?

No. For example, mine is certainly not. Which is why I continue to work for
my employer for less salary than I could make elsewhere. I love the type of
work that my company does (mostly R&D for Government SBIRs), and they let me
run my team the way I know I should. We are respected, and truly have the
ear of our employer. Our CEO listens when I give advice, and our CTO is a
geek like us.

I realize that is rare. But it does exist!

If you don't believe that something exists, you will never seek it, and
very likely never find it. Unfortunately, many people don't realize that
"What you seek is what you get" as Uncle Chutney would put it, and tend to
think the whole world is like most of the world.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

"Dave McNulty" <Da*********@di scussions.micro soft.com> wrote in message
news:BB******** *************** ***********@mic rosoft.com...
I think I'd steer clear of THAT group of employers. Sounds like a bunch of
monkey-see-monkee-do Dilberts


Kevin, aren't all employers?
This is representative of the Denver IS employment market. I don't think I
have met a management team yet in my 10 + years as a programmer that I
haven't thought were total morons when it comes to technology. Until more
tech types decide to take the management track I think this cravass
between
the knowledgeable and the ignorant will only grow. It is unfortunate but
it
is the reality.

I think the big picture here is that the .Net runtime is supporting many
languages and hopefully we will see a sparkle again in the eyes of Cobol,
Delphi, VB, and other languages the runtime supports as the powers that be
come to realize that they all have their place.

Nov 19 '05 #117
Hmmm, having myself been a programmer for more years than I care to admit.
Fashions come and go for what passes as the programming paridigm de jour.

Problem is its going to change so radically in the future, your best off
going back to school again.

Micosoft's Avalon is the new graphics architecture for WIndows. Having used
POV-RAY for eons, I saw many familiar concepts about models, textures etc.
The user interfact uses the idea of a camera looking at something, so code is
going to need to be developed with this in mind.

So when hiring talent, sometimes skills in unrelated areas of research can
quickly become mainstream as the rest of the world catches up.

So when your want to port your product to Longhorn, these VB and C# skills
look kinda useless to me.

Worse, the world is going parallel and most programing languages are
sequential, so back to school.
"Kevin Spencer" wrote:
About 2 years ago, and as recently as perhaps 1 year ago, I can recall
seeing many posts about what language to use with ASP.Net. The consensus was
that employers paid more for C# programmers, and it seems that C# became the
darling of the ASP.Net crowd.

In the meantime, I have observed an interesting phenomenon. Originally,
employers hired programmers who used C# because it was based on C, and the
prevailing opinion was (and may still be) that C# developers were better
because they must have known and/or practiced C or C++ at some time, which
would make them better programmers overall. C and C++ are hard-core
programming languages compared to VB.

However, now that nearly everyone has jumped on the C# bandwagon, it seems
to me that the distinction between the languages has nearly disappeared, at
least in terms of evaluating programmers for hire. There seem to be almost
as many clueless C# developers out there as VB.Net developers. Many C#
developers today are basically VB.Net developers using a different syntax. I
wonder if the employers have become aware of this trend?

--

Kevin Spencer
Microsoft MVP
..Net Developer
Neither a follower nor a lender be.

Nov 19 '05 #118
I personally think there are some really great things in VB.NET and it's a
real crime how C# doesn't implement them. If you ask me, VB.NET is a better
language for the rapid-application development needs of most .NET developers.
I still code in C# over VB most of the time, but there are many things I envy
in VB that I find lacking in C#.

For instance, take the string concatenation operator from VB, &, which
automatically converts the left and right operands to strings and returns a
combined string. Why is there no equivalent in C#? Sure the '&' character
would conflict with the bitwise and, but there are plenty of other symbols
(ex - Lua's '..') that could be used in place, and it's absolutely silly that
someone has to write:

some_string_out put_function("B lah blah: " + x.ToString() + ", " +
y.Totring() + " blah blah " + z.ToString + ", " q.ToString() );

when they could have simply wrote something like:

some_string_out put_function("B lah blah: " .. x .. ", " .. y .. " blah blah "
... z .. ", " .. q);

There's nothing implicit going on here; the operator has clearly-defined
behavior. It makes little sense to me why C# does not have things like this
that would do nothing but make the code a little more readable and convenient
to write.

I can understand many of the reasons for C#'s more explicit nature like
requiring explicit casts (safety) and explicitly indicating where you want to
use dynamic binding (performance), but it's silly to deprive a language of
something useful just because it isn't characteristic of the language from
which it was modeled.
Nov 19 '05 #119
> For instance, take the string concatenation operator from VB, &, which
automatically converts the left and right operands to strings and returns
a
combined string. Why is there no equivalent in C#?
+

The "ToString() part is simply strong data typing. Try turning Option Strict
ON for a change.

--
*sigh*,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

"John" <Jo**@discussio ns.microsoft.co m> wrote in message
news:DA******** *************** ***********@mic rosoft.com...I personally think there are some really great things in VB.NET and it's a
real crime how C# doesn't implement them. If you ask me, VB.NET is a
better
language for the rapid-application development needs of most .NET
developers.
I still code in C# over VB most of the time, but there are many things I
envy
in VB that I find lacking in C#.

For instance, take the string concatenation operator from VB, &, which
automatically converts the left and right operands to strings and returns
a
combined string. Why is there no equivalent in C#? Sure the '&' character
would conflict with the bitwise and, but there are plenty of other symbols
(ex - Lua's '..') that could be used in place, and it's absolutely silly
that
someone has to write:

some_string_out put_function("B lah blah: " + x.ToString() + ", " +
y.Totring() + " blah blah " + z.ToString + ", " q.ToString() );

when they could have simply wrote something like:

some_string_out put_function("B lah blah: " .. x .. ", " .. y .. " blah blah
"
.. z .. ", " .. q);

There's nothing implicit going on here; the operator has clearly-defined
behavior. It makes little sense to me why C# does not have things like
this
that would do nothing but make the code a little more readable and
convenient
to write.

I can understand many of the reasons for C#'s more explicit nature like
requiring explicit casts (safety) and explicitly indicating where you want
to
use dynamic binding (performance), but it's silly to deprive a language of
something useful just because it isn't characteristic of the language from
which it was modeled.

Nov 19 '05 #120

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

42
2907
by: Kevin Spencer | last post by:
Is it just me, or am I really observing a trend away from analysis and probem-solving amongst programmers? Let me be more specific: It seems that every day, in greater numbers, people are coming to these programming newsgroups and asking for ready-made solutions to fairly simple programming problems. They either want someone to write code for them, or point them to a ready-made chunk of software that does what they need to do. Now, I'm...
0
9621
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10106
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10039
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
8937
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing, and deployment—without human intervention. Imagine an AI that can take a project description, break it down, write the code, debug it, and then launch it, all on its own.... Now, this would greatly impact the work of software developers. The idea...
1
7461
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6716
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5355
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5484
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
3610
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.