Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
HomeAnnouncementsFree MagazinesWhite PapersSubmit Content
Discussion GroupsASP.NETWindows FormsLanguages.NET FrameworkVisual Studio.NET
Articles.NET FrameworkASP.NETToolsWindows Forms
.NET DirectoryOpen Source ProjectsUser GroupsWeb Resources
Related Topics
Visual Basic 6SQL ServerMS AccessOther DB ProductsMS Server ProductsMore Topics ...

.NET Forum / Languages / C# / January 2008

Tip: Looking for answers? Try searching our database.

C++ or C#..?

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
Sobin - 28 Dec 2007 18:17 GMT
Hi,
I am new to programming...which language should I study
to get a hot job. is it C# or C++...?
Thanks In advance
Sobin
Ignacio Machin ( .NET/ C# MVP ) - 28 Dec 2007 18:23 GMT
Hi,

A hot job????

Sitting in front of a computer surrounded of a bunch of nerds (not hot at
all) , do you call that a hot job?

Signature

Ignacio Machin
http://www.laceupsolutions.com
Mobile & warehouse Solutions.

> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin
Michael Bray - 28 Dec 2007 20:21 GMT
"Ignacio Machin \( .NET/ C# MVP \)" <machin TA laceupsolutions.com>
wrote in news:uMwtx6XSIHA.748@TK2MSFTNGP04.phx.gbl:

> A hot job????
>
> Sitting in front of a computer surrounded of a bunch of nerds (not hot
> at all) , do you call that a hot job?

Oh come on... just type 'sexy nerd girl' into google and you'll find plenty
of them.  They just aren't where YOU work!  :)

-mdb
Mike - 28 Dec 2007 18:32 GMT
Unless your on a beach surrounded by girls in bikini's, then thats hot.
Otherwise, sitting in a cubicle all day writing code, is NOT A HOT JOB!

but to answer your question, I say C# is a good lanuage to learn, but learn
the framework first, then pick your language of choice.

> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin
Arne Vajhøj - 28 Dec 2007 18:44 GMT
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?

What answer do you expect to get in a C# group ?

My impression is that the demand for C# is rising and the demand
for C++ is dropping, so C# seems as a good choice.

But I would expect C++ to be in demand for many years, so it
is not a bad choice either.

Arne
Lasse Vågsæther Karlsen - 28 Dec 2007 20:11 GMT
>> I am new to programming...which language should I study
>> to get a hot job. is it C# or C++...?
[quoted text clipped - 8 lines]
>
> Arne

I would certainly think that C++ salaries will go up, as more and more
people switch away from it, either because the teaching institutions
they attend switch away from it, or just because they think that "new"
must mean "better".

But then, those jobs will probably be reserved more for people that
already have established a long job reputation in C++, so starting now
might be a bit late to get in on that train :)

Signature

Lasse Vågsæther Karlsen
mailto:lasse@vkarlsen.no
http://presentationmode.blogspot.com/

Arne Vajhøj - 28 Dec 2007 20:22 GMT
> I would certainly think that C++ salaries will go up, as more and more
> people switch away from it, either because the teaching institutions
> they attend switch away from it, or just because they think that "new"
> must mean "better".

I think we can call that "the COBOL effect".

Arne
Lasse Vågsæther Karlsen - 28 Dec 2007 20:37 GMT
>> I would certainly think that C++ salaries will go up, as more and more
>> people switch away from it, either because the teaching institutions
[quoted text clipped - 4 lines]
>
> Arne

Except that people still want to program in C++. I wouldn't touch COBOL
again with a long stick, encased in flame-retardant clothing.

Signature

Lasse Vågsæther Karlsen
mailto:lasse@vkarlsen.no
http://presentationmode.blogspot.com/

Cor Ligthert[MVP] - 28 Dec 2007 19:24 GMT
Sobin,

Most "hot" programming is probably done in JavaScript, be aware however that
it is like eating cookies in a bakkery, when you are used to it then you
don't like it anymore.

Just my idea adding to the already given answers.

Cor
cfps.Christian - 28 Dec 2007 19:36 GMT
I'm finding in my personal life that people wanting C#/C++ for a
position want a ton of experience before hiring.  If you're leaning
towards C# see if you can't get some formal training in VB since their
hiring requirements tend to be much lower on the experience side and
if you do the .NET thing VB/C# are closely related and you won't have
wasted VB training since it translates right back to C#.
Ian Semmel - 28 Dec 2007 19:41 GMT
If you want to know both languages (which I believe you should if you
want to maximize your chances), it is probably better to learn native
C++ first as you get a better idea of what is going on "under the hood".

If you know C++, you can pick up C# easily enough.

> -----Original Message-----
> From: Sobin [mailto:sobin@live.in]
[quoted text clipped - 8 lines]
> Thanks In advance
> Sobin
Michael D. Ober - 28 Dec 2007 19:58 GMT
> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin

I would learn to write C# and read C++.  You should also learn the .NET
framework and become familiar with the underlying Win32/64 API as many of
the questions that arise here are directly related to how the Win32 API
operates.  Also, as another responder wrote, take the time to learn VB.NET
as well since you may be able to land an entry level position using VB
quicker than with C#.

As for hot, turn the heat up in you cubicle if you want hot.

Mike.
Brian Muth - 28 Dec 2007 20:26 GMT
> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin

C# and C++ are tools. You don't automatically become an accountant by learning how to move a pencil.

Yes, it's good to learn how to use tools. But what gives you the hot job is learning the business. Which business are you interested
in? (and for God's sake, please don't say "programmer").

My $0.02

Brian
Jon Skeet [C# MVP] - 28 Dec 2007 21:30 GMT
<snip>

> C# and C++ are tools. You don't automatically become an accountant by
> learning how to move a pencil.
>
> Yes, it's good to learn how to use tools. But what gives you the hot
> job is learning the business. Which business are you interested
> in? (and for God's sake, please don't say "programmer").

Well, I would safely say that I'm more interested in "software
development" than insurance, content security, or mobile CRM - all of
which have been the *business* parts of projects I've worked on.

I don't expect to be hired by anyone based on my knowledge of a
particular business. I expect to be hired by being able to apply my
experience to *any* business.

Signature

Jon Skeet - <skeet@pobox.com>
http://www.pobox.com/~skeet   Blog: http://www.msmvps.com/jon.skeet
World class .NET training in the UK: http://iterativetraining.co.uk

Nick - 29 Dec 2007 14:29 GMT
> <snip>
>
[quoted text clipped - 12 lines]
> particular business. I expect to be hired by being able to apply my
> experience to *any* business.

This sounds similar to an author being interested in spelling and
grammar but not content or meaning.

Some problems are more generic and their solutions can be applied to
many projects in many businesses but we still need to understand the
problem.

However in most of my work the users tend to be uncertain of their
requirements and hence I need a solid understanding of the business in
order to design the software and recognise common business patterns.
Jon Skeet [C# MVP] - 29 Dec 2007 14:56 GMT
> > Well, I would safely say that I'm more interested in "software
> > development" than insurance, content security, or mobile CRM - all of
[quoted text clipped - 6 lines]
> This sounds similar to an author being interested in spelling and
> grammar but not content or meaning.

Not really. When I write, I expect to know the content of what I'm
writing about *and* be able to spell. When I develop software, I expect
to work with customers and business analysts who understand what they
want/need to do better than I'm likely to.

> Some problems are more generic and their solutions can be applied to
> many projects in many businesses but we still need to understand the
> problem.

Absolutely - which is why we collaborate with others.

> However in most of my work the users tend to be uncertain of their
> requirements and hence I need a solid understanding of the business in
> order to design the software and recognise common business patterns.

That's fair enough - but I suspect a lot of your knowledge of the
business *comes* from the customers, even if they don't necessarily
manage to turn those into requirements. I could be wrong, of course -
it really depends on the line of business you're in.

All I can say is that my initial lack of understanding of insurance
workflow certainly hasn't hampered my work on insurance products, etc -
and I don't expect the information I've learned to be relevant to any
other companies I may work for in the future.

Compare that with the experience I've gained in aspects of development
and software engineering (even building code on different platforms)
which has certainly been useful across companies.

Signature

Jon Skeet - <skeet@pobox.com>
http://www.pobox.com/~skeet   Blog: http://www.msmvps.com/jon.skeet
World class .NET training in the UK: http://iterativetraining.co.uk

Family Tree Mike - 29 Dec 2007 04:54 GMT
Learn both of the languages, and java, and vb.net, and Cobol (Y3K and
Y5Digits are right around the corner).

But first learn when each language is the right tool for the solution.

Also, learn to communicate that the solution you choose is right.  (I
personally wish I took more psych and comm in school).

Also learn to build a team, and weed out the chaff on the team you are
given.  

These will get you further than the language de jeur.

> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin
colin - 29 Dec 2007 12:36 GMT
I prefer c# these days,
it frees up so much time otherwise spent with memory management.

If you going to do c# I would start with c#,
moving from c++ to c# isnt that easy,
as theres considerable diferences wich make it harder if your well used to
c++
such as sprintf type format is totaly diferent and theres no macros or
multiple inheritence etc.

I still use c++ for embeded microcontroller stuff wich then comunicates to a
c# app on a PC.

I have no idea about relevant job opertunities though, but with c# being
relativly new they cant realistically ask for like 10 yrs experience. c++
will be around for ages but theres already lots of c++ programmers.

Im stil waiting for a better language however,
being a hardware engineer im also into vhdl wich would
be an interesting concept to make into a full blown software programing
language.

Colin =^.^=

> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin
Arne Vajhøj - 29 Dec 2007 18:54 GMT
> I prefer c# these days,
> it frees up so much time otherwise spent with memory management.

There are also ways of making that easier in C++.

> If you going to do c# I would start with c#,
> moving from c++ to c# isnt that easy,
> as theres considerable diferences wich make it harder if your well used to
> c++
> such as sprintf type format is totaly diferent and theres no macros or
> multiple inheritence etc.

I don't think it will take a C++ programmer many minutes to convert
from sprintf format to String.Format and note the lack of macros
and multiple inheritance. And if he forget then the compiler will'
remind him.

I think it is worse the other way around. The things that is taken
care of the runtime in .NET and that you have to do yourself in C++.
And they do not give a compiler error. Instead they give various
runtime errors that are often very hard to locate the original cause
for.

Arne
colin - 31 Dec 2007 13:41 GMT
>> I prefer c# these days,
>> it frees up so much time otherwise spent with memory management.
>
> There are also ways of making that easier in C++.

im interested in the sort of thing you refer to ?

for example, I had a decision tree I wrote in c++ wich it generated from
some input data,
there was quite a bit of recusrion or loops wich had to be handled by
recognising
repeating branches and instead of going onto infinity just looping the
branch back to some equivalent point.

this meant often an entire branch would be deleted but at the time of
deletion
some of the elements in the branch may be still used elsewhere,
although elements might be used by things in the same branch wich was about
to be deleted.

with c# this is taken care of, you just simply unreference it and it
eventually deletes anything that
isnt referenced from some static point.
I had to write the code to do the same thing with my tree.

>> If you going to do c# I would start with c#,
>> moving from c++ to c# isnt that easy,
[quoted text clipped - 7 lines]
> and multiple inheritance. And if he forget then the compiler will'
> remind him.

I remember it took me a long time to find the right page wich told me how to
print out
a simple hex dump with 2 hex digits for each byte,
I found 100s of pages wich told me how to print out the basic stuff with
String.Format but stoped short of saying how to print out exactly 2 digits.
most other things I seemed to find fairly easy.

ok I know its not dificult, its easy when you know how, but its just new.
I made the mistake of thinking it was easy transition,
instead of treating it as a new language and burying my head in a few books
for a few days.

its not a question of just noting they dont exist,
but what I meant was if your realy used to using a macro
for certain things it can be hard to code the the equivalent of the macro
template functions can be used but I find they are limited ...

for example I have several structs wich have some of the same elements and I
want to
have a function wich does the same operation on those elements for diferent
structs...
in a template function I cant access any members of a <type> unless I put a
constraint,
but then I am limited to only alowing one class, unless I am mistaken or
there is a way round this?
unfortunatly I dont have the option to add an interface to the structs
definition.

a macro would easily take care of this.
again the same for multiple inheritence, sometimes its just difuclt to
figure out how to do the equivalent.
although I think macros can be very badly misused, and multiple inheritence
could realy suck sometimes.

> I think it is worse the other way around. The things that is taken
> care of the runtime in .NET and that you have to do yourself in C++.
> And they do not give a compiler error. Instead they give various
> runtime errors that are often very hard to locate the original cause
> for.

yep transition the other way is probably dificult too,
I still need C/C++ for my microcontrollers though,
its like switching to a diferent world.
and ofc its still usefull to know basic c++ if you want to do some unsafe
stuff in c#...

Colin =^.^=
Arne Vajhøj - 31 Dec 2007 18:48 GMT
>>> I prefer c# these days,
>>> it frees up so much time otherwise spent with memory management.
>> There are also ways of making that easier in C++.
>
> im interested in the sort of thing you refer to ?

Templates, smart pointers etc..

>>> If you going to do c# I would start with c#,
>>> moving from c++ to c# isnt that easy,
[quoted text clipped - 13 lines]
> String.Format but stoped short of saying how to print out exactly 2 digits.
> most other things I seemed to find fairly easy.

I admit that http://blog.stevex.net/index.php/string-formatting-in-csharp/
is much better than the official docs.

Arne
Ben Voigt [C++ MVP] - 31 Dec 2007 19:46 GMT
> Hi,
> I am new to programming...which language should I study
> to get a hot job. is it C# or C++...?
> Thanks In advance
> Sobin

Neither of those is a very good first language.  Actually, object-oriented
*anything* isn't a good first language.  Start with something that starts
executing at the top of the file and goes until it hits the bottom, maybe
python (perl and tcl also qualify but are going out of vogue, maybe ruby
would be another good alternative, even straight C wouldn't be too bad but
there's still some -- to the beginner -- magic incantations to learn to get
a program started).

Then, once you've mastered simple I/O, loops, and arithmetic, and are ready
for some file access or graphical windows, switch to an object-oriented
language or learn the O-O extensions to the language you started with.

I would basically have the following rule: don't start with any language
where "hello world" is more than five lines.  Here's the C version for
reference, exactly five lines:

#include <stdio.h>
int main( void )
{
   puts("Hello world\n");
}

OTOH C#:

using namespace System;
public class MyProgram
{
   public static void Main(void)
   {
       Console.WriteLine("Hello World");
   }
}

As you can see, there's a lot of extra junk that you won't learn for a
while.

Whereas PERL has no fluff:

print "Hello world\n";
Arne Vajhøj - 31 Dec 2007 21:28 GMT
>> Hi,
>> I am new to programming...which language should I study
[quoted text clipped - 11 lines]
> for some file access or graphical windows, switch to an object-oriented
> language or learn the O-O extensions to the language you started with.

Personally I agree that a simple procedural programming language
is better to start with than an object oriented one.

But it is far from universal accepted.

Arne

PS: I would prefer a language like Pascal over the dynamical typed
    languages.
Ben Voigt [C++ MVP] - 03 Jan 2008 19:47 GMT
> Arne
>
> PS: I would prefer a language like Pascal over the dynamical typed
>     languages.

That's a good point.  Pascal is one of the languages I've never come in
contact with, but if it makes life as simple as "(1) load IO library (2)
print something" then I imagine it would be a very good choice.

Free Magazines

Get these publications absolutely FREE for up to 12 months. There are no hidden fees and no obligation. Simply choose a title, complete the application form and submit it. Read more ...

Oracle MagazineNetwork ComputingComputer WorldBio-IT WorldeWeekInformation WeekInfosecurity
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.