Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

C# In-Depth

CmdrTaco posted about 6 years ago | from the does-he-mention-that-it's-evil dept.

Programming 499

Bergkamp10 from ComputerWorld writes "Microsoft's leader of C# development, writer of the Turbo Pascal system, and lead architect on the Delphi language, Anders Hejlsberg, reveals all there is to know on the history, inspiration, uses and future direction of one of computer programming's most widely used languages — C#. Hejlsberg also offers some insight into the upcoming version of C# (C#4) and the new language F#, as well as what lies ahead in the world of functional programming."

Sorry! There are no comments related to the filter you selected.

The secret history of C# (-1)

Anonymous Coward | about 6 years ago | (#25217425)

Approximately 60 billion years ago, Jesus mated with a Tyrannisorus Rex, conceiving GOD. This is when I was born, and therefore I know everything about C%. Awesome Department of Labour!

Ads... (3, Informative)

Dannybolabo (980836) | about 6 years ago | (#25217501)

Why must they make me trawl through 8 pages of ads?

Re:Ads... (4, Informative)

Anon E. Muss (808473) | about 6 years ago | (#25218019)

Just click the "Print this story" button and you can read the whole thing on one page, without ads. This trick works on many sites.

The Printer Friendly version ... (5, Informative)

neonprimetime (528653) | about 6 years ago | (#25217507)

I beg you to use this link [computerworld.com.au] instead of flipping thru all 8 pages

Re:The Printer Friendly version ... (2, Informative)

Anonymous Coward | about 6 years ago | (#25217761)

Your link did not redirect me to a printer friendly version.

Re:The Printer Friendly version ... (0)

moderatorrater (1095745) | about 6 years ago | (#25218101)

While you are a true hero for posting a link to the printer friendly version, it didn't actually send me there. Perhaps this link [computerworld.com.au] will do it, although if they're smart they'll make you go to the article before displaying the print version.

oh goody. (0, Flamebait)

strack (1051390) | about 6 years ago | (#25217529)

All the latest news on Microsoft's slightly altered and nonstandard and proprietary version of the c++ language. Oh goody.

Re:oh goody. (3, Informative)

ByOhTek (1181381) | about 6 years ago | (#25217647)

It's closer to Java than C++. Much closer. Would you call Java a 'slightly altered and nonstandard and proprietary' version of C++?

Re:oh goody. (0)

strack (1051390) | about 6 years ago | (#25217751)

the essential difference is that java is open sourced.

Re:oh goody. (1)

Poltras (680608) | about 6 years ago | (#25217937)

Check out the Programming paradigm [wikipedia.org] page on wikipedia which has a good load of information on what differentiate a language from another. Java is absolutely not the same as C++.

The fact that not much people actually writes C++ (as opposed to, say, C with class) has something to do with the common belief that Java is alike, but look further than mere structural construct and you'll see why they are worlds apart.

Re:oh goody. (1, Insightful)

ByOhTek (1181381) | about 6 years ago | (#25217989)

Yeah, but people hated C# and love Java about like they do now before Java was open sourced.

Re:oh goody. (2, Insightful)

Goaway (82658) | about 6 years ago | (#25218295)

Yeah, it only took twelve years for that to happen. I guess C# just won't get around to it for another five years.

Re:oh goody. (-1, Flamebait)

Anonymous Coward | about 6 years ago | (#25217895)

I would, but I'm not mean enough to associate C++ with such a horrid language as Java. I have too much respect for it.

Re:oh goody. (1, Flamebait)

binarylarry (1338699) | about 6 years ago | (#25217997)

You have too much respect for C++?

LOL

oh goody.-Mono (0)

Anonymous Coward | about 6 years ago | (#25217659)

More like Java. Plus has has been pointed out time and again. The CLR is a standard.

Re:oh goody. (0)

Anonymous Coward | about 6 years ago | (#25217697)

So garbage-collection and a general high-level language is the same as a old and difficult low-level language.
Oh Goody, I must have missed the irony :(

Re:oh goody. (2, Informative)

GeckoX (259575) | about 6 years ago | (#25217793)

Either a troll, flamebait, or spoken in ignorance.
Languages evolve, and anyone that knows c++ and c# knows that what you have stated is patently untrue. Not interested? Then don't bother, but until you do your research, please refrain from throwing in your apparent 2 cents worth...it's not really worth that much.

As has been stated already, the CLR is in fact a standard, and c# has more in common with Java than with c++. It's an evolutionary language, and it is very popular for a lot of very good reasons. But you'd know that if you cared to bother looking into it.

Re:oh goody. (2, Informative)

strack (1051390) | about 6 years ago | (#25218045)

i think you mean "standard encumbered with patents, and not covering the whole libary" and while it is true that it is a interpreted language like java, its syntax is a lot like c++. Although, your probably right. I really shouldn't compare it to c++. thats a insult to c++. Its more like visual basic.

Re:oh goody. (2, Informative)

binarylarry (1338699) | about 6 years ago | (#25218135)

Not only that, but the "standard" is of the type anyone with cash can buy.

The .NET "standards" weren't submitted to peer review, in a fashipn like IEEE. Instead, they were handed in a manilla folder to a cashier with a whole lot of money.

Voila, parts of .NET become a "standard".

Basically getting .NET "standardized" was fancy marketing campaign.

Re:oh goody. (-1, Flamebait)

Anonymous Coward | about 6 years ago | (#25218253)

You have no idea what you are talking about.

Maby there will be some article about idiotic rants about things you know nothing about - then your baffeling comments may make some sense.

I mean, what you have said so far is obviously false to anyone who has used both languages.

I used C++ to design a serious 3d game using OpenGL in college. I would have rather used C# becuase it is much less of a pain in the ass than C++.

In conclusion, you are an idiot and you are full of shit.

Re:oh goody. (1, Insightful)

Anonymous Coward | about 6 years ago | (#25218279)

Java hasn't been an interpreted language in a long, long time.

Re:oh goody. (1)

odourpreventer (898853) | about 6 years ago | (#25218285)

Its more like visual basic.

Considering that C# and Visual Basic have the same byte-code (nowadays), it's a fair assumption.

Re:oh goody. (1)

5865 (104259) | about 6 years ago | (#25217829)

Perhaps you meant C++/CLI [wikipedia.org] ?

Re:oh goody. (4, Informative)

i kan reed (749298) | about 6 years ago | (#25218055)

Your reply indicates you have new clue what C# is. C# is not a direct descendant in design from c++. C# is a child language of Java more than anything. You could probably convert 90% of C# code directly to java with a simple find/replace regex for keywords.

C# is also not non-standard. The C# language has a published standard, which, while not open source, is not the same as non-standard. A number of other implementations exist for both the virtual machine level(e.g. mono, boo) and the compiler/ide level(e.g. sharpdevelop)
C# more tolerable than java in terms of ease of design and naturalness of the language, and good for a similar scope of projects.

I like the ability to release windows binaries without having a headache about version compatibility, the irrationality of the underlying windows API, or memory leaks in trivial portions of code.

C# is not the best language for all sorts of problems, but when it comes to banging out a GUI .exe for windows users to use quickly, I don't think there are better choices.

Re:oh goody. (1)

binarylarry (1338699) | about 6 years ago | (#25218169)

For our reference, please post an example of how C# is "more tolerable" than Java.

Please provide the reference with code samples for both languages.

Re:oh goody. (3, Informative)

JasterBobaMereel (1102861) | about 6 years ago | (#25218247)

"C# is not the best language for all sorts of problems, but when it comes to banging out a GUI .exe for windows users to use quickly, I don't think there are better choices."

Delphi - Simpler, Faster, less overhead, By the same author!

Foctothorpe FTW (5, Funny)

netpixie (155816) | about 6 years ago | (#25217549)

I am a sad case and find much amusement in the fact that the "correct" name for the # symbol is octothorpe, which means "C#" should not be pronounced "C-sharp" but Coctothorpe.

Imagine my joy on discovering that they've scoured the alphabet and have managed to find a new initial letter that makes an even funnier name.

Ladies and gentlemen, let us welcome the new language, F# or Foctothorpe.

Re:Foctothorpe FTW (2, Informative)

mbadolato (105588) | about 6 years ago | (#25217711)

I am a sad case and find much amusement in the fact that the "correct" name for the # symbol is octothorpe, which means "C#" should not be pronounced "C-sharp" but Coctothorpe

Er, haven't studied much music, eh? Personally I don't recall anyone ever saying anything to the effect of "This time,let's try Bach's Bouree, but change the key to E octothorpe". E# is pronounced "E sharp" ;-)

Re:Foctothorpe FTW (5, Informative)

netpixie (155816) | about 6 years ago | (#25217795)

That'll be because music uses sharps (i.e. unicode symbol 266F) rather than octothorpes (unicode 0023)

E followed by unicode 266F is indeed E sharp
E followed by unicode 0023 is E-octothorpe.

Re:Foctothorpe FTW (1, Informative)

fireboy1919 (257783) | about 6 years ago | (#25217871)

Pretty sure that music precedes unicode, dude, and they write the sharp sign using anything that looks like a tiny smooshed tick-tack-toe board.

At any case, you're both wrong. "E#" is pronounced "eff" - there is a half step between E and F, and the "#" sign denotes "do this note, except take it up half a step."

E#==F.

Re:Foctothorpe FTW (1, Insightful)

Waffle Iron (339739) | about 6 years ago | (#25218199)

Pretty sure that music precedes unicode, dude, and they write the sharp sign using anything that looks like a tiny smooshed tick-tack-toe board.

If a sharp sign is the same as an octothorpe because it has a similar (but not identical) shape, then a flat sign must be the same as a lower-case "b". As it happens, however, neither pair of symbols have ever been interchangeable.

Re:Foctothorpe FTW (0)

Anonymous Coward | about 6 years ago | (#25218245)

Excuse me. E# is pronounced "F"

Re:Foctothorpe FTW (1)

larry bagina (561269) | about 6 years ago | (#25217865)

A musical sharp is unicode code point $266F. That shift-3 (#) character has unicode (and ASCII) code point $23.

You're missing the most radical language of all (4, Funny)

BadAnalogyGuy (945258) | about 6 years ago | (#25217787)

The Roctothorpe!

*insert headbanging graphic here*

Re:Foctothorpe FTW (1)

Chemisor (97276) | about 6 years ago | (#25217791)

Hey, it's a good name! It's about time we stopped focusing on creating glistening new tools and started thinking about actually using them for something. But, of course, being an average Slashdot reader, you probably don't know how.

Re:Foctothorpe FTW (1)

Alzheimers (467217) | about 6 years ago | (#25217869)

Having no musical background but a long history of using a telephone, I read that as "C-Pound" and "F-Pound"

It was my impression that they were named in a fit of rage by noted scientist Bruce Banner.

Re:Foctothorpe FTW (1, Funny)

Anonymous Coward | about 6 years ago | (#25217875)

I prefer C-tic-tac-toe, but that's just me.

Re:Foctothorpe FTW (1, Funny)

kosh (4232) | about 6 years ago | (#25217891)

octothorpe!?!?

Damn!! and I always thought C# was the "hundred pound" programming language. Doh!

>.

Re:Foctothorpe FTW (1)

lysergic.acid (845423) | about 6 years ago | (#25218191)

no, no, no--it's called the C-hash programming language. everyone knows that.

Re:Foctothorpe FTW (1)

morgan_greywolf (835522) | about 6 years ago | (#25218271)

Good thing there isn't a MM#. That would just be wayyyy tooo expensive.

Re:Foctothorpe FTW (2, Funny)

binarylarry (1338699) | about 6 years ago | (#25217933)

I can't wait until the Mono project completes their clone.

And I can use GNU/Cocotothorpe.

a bunch of questions (5, Insightful)

yanyan (302849) | about 6 years ago | (#25217555)

Could it be that C# is one of the most widely used simply because of the installed base of windoze machines all over the world and not because of any technical merit? Most current languages have compilers and interpreters that run on windoze; what makes people choose C# over the others? Just how much impact has C# had on computing sciences as a whole, anyway?

Re:a bunch of questions (2, Insightful)

SquareVoid (973740) | about 6 years ago | (#25217685)

What impact did Java have on computing sciences? Well take that list and multiply it by several generations ahead of Java and that is what you have. And it isn't so much C# as it is the .NET framework which has done this. C# is just syntax that allows you to use the framework. C# just happens to have a very close syntax structure to the C-family of languages. If you are a glutton for punishment go to VB.NET and code in that horrendous language structure, but still be able to do all the things you could in C#.

Re:a bunch of questions (4, Insightful)

GeckoX (259575) | about 6 years ago | (#25217901)

ehh? You do realize that VB.Net is not VB6. When you choose to not use the Microsoft.VisualBasic namespace, which merely contains an abstraction layer to allow VB6 programmers to be more comfortable in .Net, it actually hardly merits the name VB.

For the most part, the only differences between c# and vb.net are syntax. Begin...End, For...Next control structures rather than brackets is the biggest difference.

I wrote c# at my last job for a couple of years. At my current shop, they're a vb shop and brought me in to bring things up to .Net. Since all the current devs were vb6 devs, they wanted the easiest path for them to migrate into .Net, thus I had to start working in VB.Net. At first, I dreaded it..but very quickly realized that it's all just .Net, and the VB.Net and C# languages are very comparable, both being just as easy to work in.

Bottom line, you like curly braces? Use c#. Don't care? Then use whichever you like.

Re:a bunch of questions (2, Informative)

BradleyUffner (103496) | about 6 years ago | (#25218037)

Actually, that isn't right either. Microsoft.VisualBasic isn't the compatability layer, it's the VB runtime. It just provides a few extra function that *look* like VB6, some of them don't even behave the same. The actual computability layer is in Microsoft.VisualBasic.Compatability, It's the library that is responsible for doing the weird stuff like giving you collections that start at 1 instead of 0 and other strange stuff. Microsoft.VisualBasic follows all the standards that any other .NET library uses.

Re:a bunch of questions (2, Insightful)

wtbname (926051) | about 6 years ago | (#25218103)

ehh? You do realize that VB.Net is not VB6. When you choose to not use the Microsoft.VisualBasic namespace, which merely contains an abstraction layer to allow VB6 programmers to be more comfortable in .Net, it actually hardly merits the name VB.

For the most part, the only differences between c# and vb.net are syntax. Begin...End, For...Next control structures rather than brackets is the biggest difference.

I wrote c# at my last job for a couple of years. At my current shop, they're a vb shop and brought me in to bring things up to .Net. Since all the current devs were vb6 devs, they wanted the easiest path for them to migrate into .Net, thus I had to start working in VB.Net. At first, I dreaded it..but very quickly realized that it's all just .Net, and the VB.Net and C# languages are very comparable, both being just as easy to work in.

Bottom line, you like curly braces? Use c#. Don't care? Then use whichever you like.

So true. I use both C# and VB .Net. It blows my mind how the ignants out there blast VB.Net, while happily code away in C#, a language that at best is slightly syntactically dissimilar. Actually I guess it doesn't. Ignorance is ignorance after all.

Re:a bunch of questions (1, Insightful)

Anonymous Coward | about 6 years ago | (#25217691)

As always it's an issue of tools for the job. When working on Windows, C# allows a serious programmer to develop quality applications quickly and avoid a lot of the boilerplate code that C++ will require you to do.

It has the complex expressiveness that programmers need yet the nice integration with the OS that allows the developer to concentrate on functionality and not technical integration.

Re:a bunch of questions (5, Interesting)

ByOhTek (1181381) | about 6 years ago | (#25217889)

I've tried a number of apps in mono under frebsd (you need lang/mono and x11-toolkits/libgdiplus). Threads, UI, Sockets, SSL sockets, etc. all seem to work fine. Compiled in Visual Studios 2003. It's not even bad as a cross-platform application.

Conversely, in Suns own Java implementation, going between Windows and HPUX, I've run into issues simply with the regular expression parser of the /find/ function of the String library.

I'm not saying .NET is perfect by any means, but it's certainly not bad framework either. It's decent for cross-platform apps. Everything has it's flaws, nothing is perfect, etc.

Yes, I know, there is always a chance MS will say "No more!" to the mono project. As I said, nothing's perfect.

Re:a bunch of questions (5, Informative)

Nursie (632944) | about 6 years ago | (#25217859)

8th most widely used.

After Java, C, C++, Visual Basic, Python, Perl and PHP. It just beats out javascript, below that you get into the obscure languages.

Re:a bunch of questions (1)

aproposofwhat (1019098) | about 6 years ago | (#25218283)

...Perl ... below that you get into the obscure languages.

Show me something more obscure than Perl!

Re:a bunch of questions (1)

Aladrin (926209) | about 6 years ago | (#25218259)

How does that make any sense? Almost all programming languages work on Windows, so it comes right back to technical merit. There's nothing stopping a 'better' language from being more popular on Windows.

If anything, the fact that C# didn't run on Linux and Mac for a long time (and still isn't perfect) should have reduced its usage, lending credit to the hypothesis that C#'s rise is based on its technical merit.

Personally, I think C# is a pretty nice language to write simple programs on. If you need raw speed, or hardware interface, then it's not a good choice... But just about all desktop applications need neither. It's much easier to deal with than C++ or VB6 and combines the best of both of them. I definitely find it more responsive than Java, and it has a much better IDE. (Even the open source #develop is better than anything I've found for Java.)

amazing what doesnt get asked (0, Flamebait)

Ancient_Hacker (751168) | about 6 years ago | (#25217571)

Talk about softballs, some of us would like the answers to these questions:

(1) How much did Microsoft have to pay you to switch from the side of the angels to their side?

(2) Who decided to make C# just enough like Java to fragment and muddle the whole programming scene?

(3) How can you consider C# to be a success when Microsoft tried using it to replace large parts of Windows and ended up throwing the whole mess away?

Re:amazing what doesnt get asked (4, Interesting)

Abcd1234 (188840) | about 6 years ago | (#25217669)

I'm curious, what gives you the idea that C# fragmented "the whole programming scene"? As far as I can tell, C# has really just replaced C++ on the Windows client side, where Java never had a foothold to begin with.

So, where is this fragmentation you speak of?

Re:amazing what doesnt get asked (3, Interesting)

rzei (622725) | about 6 years ago | (#25217853)

Well there is fragmentation produces as they introduce YET another language.

You currently cannot say C# replaces C++ on Windows platform as using any DirectX components for example is nightmare through C#. Which I think is a rather major obstacle if you have an application that would like to use something other than simple sound output facilities. (Reasons for this might be as simple as choosing a sound output device, on at least .NET 2.0.)

More on the major downside of writing .NET applications is that you cannot guarantee that the stuff I work on my Vista workstation works on my co-workers XP workstation. This is a very sad "feature" that has been bugging as even with very simple applications. (Side note: We have tried to code using all the best practices you can find from MSDN.)

Also, GP's point 3 sounds very interesting. Can it be a success when it cannot be used to produce major parts of their own operating system. (No, I'm not talking about writing their kernel with C#).

Though, the GP doesn't list any sources for point 3, which at least I would be very interested to read as I seem to have missed those articles.

Re:amazing what doesnt get asked (4, Insightful)

Abcd1234 (188840) | about 6 years ago | (#25217983)

Well there is fragmentation produces as they introduce YET another language.

So? That's a problem for Windows developers. Why should a Java programmer care? In the realms where Java is popular, C# has had basically no influence. So MS has, at worst, fragmented the Windows development ecosystem... big deal. :)

You currently cannot say C# replaces C++ on Windows platform as using any DirectX components for example is nightmare through C#.

...

More on the major downside of writing .NET applications is that you cannot guarantee that the stuff I work on my Vista workstation works on my co-workers XP workstation.

But none of this has anything to do with fragmentation to begin with. You're getting off-point. And that's ignoring the fact that, once again, this is a problem for MS... the rest of the programming world doesn't care one whit how hard DirectX is to integrate with C#.

Can it be a success when it cannot be used to produce major parts of their own operating system.

Last I checked Java wasn't being used to write operating system components, yet no one claims it's a failure. Now, that's not to say C# and .NET are unbridled successes, but that's a pretty crappy metric for making the call.

Re:amazing what doesnt get asked (1)

Veretax (872660) | about 6 years ago | (#25218243)

Curious....

Is the issue you mention between Vista and XP a C# issue? Or an issue of the XP user not being on the latest and greatest release of .net (3.5 right now) ? I believe you can download the current framework for use on XP if that is the case.

Besides, this is slashdot, why would anyone on slashdot be promoting MS Vista?

Re:amazing what doesnt get asked (0)

Anonymous Coward | about 6 years ago | (#25217917)

"As far as I can tell, C# has really just replaced C++ on the Windows client side, where Java never had a foothold to begin with."

You mean, the crappy sharewares and freewares are using C# as the client side language. Professional apps like Adobe, Autodesk, Microsoft Office or Digidesign all use C++, no fcsking c# or java.
The only major app I know that makes use of C# and the latest WPF framework are Microsoft Expression apps (what a surprise!) and the bloatware Yahoo Messenger.

Re:amazing what doesnt get asked (0)

Anonymous Coward | about 6 years ago | (#25218043)

C# replaced C++ on the Windows client side??

I will consider agreeing when Microsoft themselves start shipping serious software written in it...

Re:amazing what doesnt get asked (1)

claytonjr (1142215) | about 6 years ago | (#25217959)

(2) Who decided to make C# just enough like Java to fragment and muddle the whole programming scene?

http://en.wikipedia.org/wiki/Anders_Hejlsberg [wikipedia.org]

He was/is the lead architect behind c-sharp.

C# is not the most widely used comp language (4, Insightful)

frith01 (1118539) | about 6 years ago | (#25217583)

>>one of computer programming's most widely used languages.

I highly doubt that a language that has only been around for a few years is the most "widely" used computer language. Cobol, fortran, or standard C , maybe.

Re:C# is not the most widely used comp language (2, Insightful)

Anonymous Coward | about 6 years ago | (#25217663)

The author used the words "one of", meaning *not* THE most widely used language. It is pretty common, so it's not really an arguable assertion.

Re:C# is not the most widely used comp language (1, Informative)

ByOhTek (1181381) | about 6 years ago | (#25217743)

note it says "one of computer programmings ..." not "the..."

That means it's not necessarily THE most widely used language, but in a subset of the most widely languages...

In the top 75%? probably
In the top 50%? probably
In the top 10%? maybe...

 

Re:C# is not the most widely used comp language (2, Informative)

Nursie (632944) | about 6 years ago | (#25217809)

Apparently Java is the top dog today.

My personal favourite, good 'ol C is in second place. C# was in at number 8, and seems actually to be on the decline.

One of the most widely used languages? (2, Interesting)

novalis112 (1216168) | about 6 years ago | (#25217589)

Really? Is that actually true? I thought it was still relatively obscure. I'm not sure I've ever even met more then a handful of people who have done any real work with it. Am I just totally out of the loop? Has C# truly surpassed C, C++ and Java?

Re:One of the most widely used languages? (3, Funny)

Dystopian Rebel (714995) | about 6 years ago | (#25217703)

Yes, it must be one of the most widely used, because it seems that every day I hear of .NET failing to scale somewhere.

Re:One of the most widely used languages? (1)

novalis112 (1216168) | about 6 years ago | (#25217813)

Oh I see! Chuckle...

Re:One of the most widely used languages? (4, Informative)

jlechem (613317) | about 6 years ago | (#25217943)

I can feel my Karma burning here but in my office we run into this issue with a lot of MS products. SQL Server 2000 ........ Upgrading is not an option since the DoD just approved SQL Server 2005 for classified use. Apparently 2008 is the bees knees but come on 8 years to get your shit straight? And we've also run into massive problems getting asp.net applications to scale. We've found MS best practices while certainly easy are not very efficient behind the scenes and cause massive slowdown when used on a large scale. And after using their ajax toolkit I wouldn't touch that thing with a ten foot pole.

Now I might sounds like I'm bashing .net a bit. But .net products do have their time and place. I code in C# almost everyday. But for anything Enterprise I would think twice about it.

Re:One of the most widely used languages? (2, Insightful)

Anonymous Coward | about 6 years ago | (#25217705)

Yes you must be out of the loop to some degree if you have only met a handful of people developing in it. It certainly is not obscure. Where I am there is more C# work going on than any other single language.

Re:One of the most widely used languages? (0)

Anonymous Coward | about 6 years ago | (#25217949)

Yes you must be out of the loop to some degree if you have only met a handful of people developing in it. It certainly is not obscure.

It is outside of Microsoft shops!

Re:One of the most widely used languages? (2, Insightful)

nschubach (922175) | about 6 years ago | (#25217951)

Could that be partly due to the fact that a literal monkey could code it? Hell, most of the code you'd ever need for any program has been posted by some Microsoft programmer on MSDN so the only skill developers have to know is cut and paste. I don't know how many times I've looked through code with myObject and myHttpWebRequest because the developer was too lazy to even change the variable names to fit the purpose.

Re:One of the most widely used languages? (1)

novalis112 (1216168) | about 6 years ago | (#25217963)

So... You work at Microsoft? ;)

Re:One of the most widely used languages? (0)

Anonymous Coward | about 6 years ago | (#25217879)

Depends.

For the kind of applications you might expect to find on a typical Windows desktop PC, no. It's still pretty much C++ all the way, with a sprinkling of other languages.

Bear in mind that most development for Windows is internal business apps, and software sold to other businesses. In fact, most software developed in general falls into that category.

In those categories, C# is getting pretty common, but it's not replacing C++. It's replacing the previous incumbent, Visual Basic.

It's also making a dent in Java's niche (business server applications) - organizations with all-Microsoft IT infrastructure, or with developers with no programming experience outside of Microsoft's environment tend to choose C# instead of Java.

Re:One of the most widely used languages? (1)

ray-auch (454705) | about 6 years ago | (#25217961)

> Has C# truly surpassed C, C++ and Java?

No, but it is up there with them - which is what the quote said "ONE OF the most widely used..."

Where exactly it is will depend on which survey you read. Evans data reported something like 1/3 using C# I think. Or looking at current job vacancies, this site puts it third in the skills list: http://www.salaryservices.co.uk/topskills?expand=topskills&cboIndustry=-1/ [salaryservices.co.uk]

Of course, YMMV and depend on location and industry segment. If you are doing eg. embedded development, or primarily targeting Unix platforms, then you will see very little C# - but then if you were working mostly on Windows develeopment you'd think C and C++ were mostly dead...

Re:One of the most widely used languages? (1)

Nursie (632944) | about 6 years ago | (#25218095)

"No, but it is up there with them "

I'm afraid it's not really. [tiobe.com] They are the top three languages. C# comes in at number 8, after Perl, PHP, Python and VB

Re:One of the most widely used languages? (1, Insightful)

Anonymous Coward | about 6 years ago | (#25218249)

Behold, the "coding standards company" [tiobe.com] whose web site requires javascript.

What a bunch of clowns!

Re:One of the most widely used languages? (1)

afidel (530433) | about 6 years ago | (#25218149)

Yep, I just did a quick Monster search for 200 miles from my zip, Java comes in a 525, C# at 342, and C++ at 300.

Why F#? (1)

LSD-OBS (183415) | about 6 years ago | (#25217599)

They should really have called the successor E#

Re:Why F#? (2, Funny)

xouumalperxe (815707) | about 6 years ago | (#25217833)

Well, F# is a perfect fourth up from C#, which offers better resolution than moving to E#, a major third up. At least they didn't go for G, at which point they'd have you begging for G#.

Re:Why F#? (0)

Anonymous Coward | about 6 years ago | (#25217835)

They should really have called the successor E#

They wanted to move from the key of 'C' to the key of 'D' - unless, they're thinking in an entirely different mode. Makes me kind'a want to sing da Blues.

Re:Why F#? (1)

LSD-OBS (183415) | about 6 years ago | (#25217945)

So what, you recommend all programming langauges be named on the minor pentatonic scale? WIN!

Oh, well, that explains everything... (1)

argent (18001) | about 6 years ago | (#25217643)

"Microsoft's leader of C# development, writer of the Turbo Pascal system, and lead architect on the Delphi language..."

Well, that explains everything. Turbo Pascal was the source of endless problems on the PC, and not just because it was really "Turbo Something Kind Of Like Pascal". It seemed like 90% of the time when I came across a badly behaved application that ignored command line redirects because it went straight to the BIOS just to write its copyright banner, and wouldn't run on anything but a perfect clone, or wouldn't run under DoubleDOS, or (later) required the most stringent DOS emulation under Windows, it was in Turbo Pascal.

Why anyone thought that was a good thing to happen by default, I don't know, but it drove me bonkers. No wonder C# and .NET is its own little universe that only deals with other software at the end of a ten foot pole.

Re:Oh, well, that explains everything... (1)

SimonGhent (57578) | about 6 years ago | (#25217923)

Turbo Pascal and Delphi were popular because 20 or so years ago universities taught Pascal to their computer science students. About the time Delphi came out, things moved on and they began teaching C++ which pretty much killed Delphi off.

That and MS's development tools got much better.

Re:Oh, well, that explains everything... (0)

Anonymous Coward | about 6 years ago | (#25218291)

Turbo Pascal was popular for a couple of other reasons also:

1) Price : 80 bucks when other PC commercial compilers were going for hundreds of dollars at least.

2) Speed : TP was written in assembler as a one pass compiler whereas other PC commercial compilers were multiple pass (MS compilers did 3 passes as I recall and could take minutes to build an app on an old PC)

Re:Oh, well, that explains everything... (5, Interesting)

FlyingGuy (989135) | about 6 years ago | (#25218227)

Dude, you seriously need to stop sipping the red bull or whatever your drinking...

Turbo-Pascal was a god send to the programming world. It was an entry point for 10's of thousands of programmers and I am one of them. It was the 1st IDE, write your code then compile and run in one key press! No one had that, not a single company. Yes it was limited to 64K of code and data and only made an image ( com file ), but what you could do in that 64K was beyond anything else at the time.

Say what you will about Anders going over to the dark side, I mean until then he was my personal hero, but there is no denying the mans brilliance. Turbo Pascal for Windows? Again, no company had anything remotely close to that and he was the architect. Delphi... Again, no one had anything close to that, and he was the architect.

The OOP model that came out of Borland made C++ look exactly like the joke it was and is today. Their model was infinitely superior, and again, he was the architect.

The demise of Borland was mostly about Microsoft's malevolence and monopolistic ways. If MS had wanted actual competition, more then likely we would would all be programming in Borland languages to this day, instead of the shit that comes from MS which most of Anders has a hand in, but is corrupted by the MS Marketing machine making technology decisions.

er.. wasn't vista V1 dumped because of C sharp ? (0)

Anonymous Coward | about 6 years ago | (#25217645)

wasn't vista being written in C# + .net for 2.5 yeats before they gave up and went back to C++ ?

if thats the case , why the hell would anyone want to use a platform that M$ can't use themselves ?

C# is a good language (2, Funny)

s6135 (1367437) | about 6 years ago | (#25217693)

I think C# is one of the better languages I have used. I think M$ has done a good job (as they usually do) of stealing the concept and making it easier for the user (in this case, developer). I do understand that as far as M$ is concerned, it is only meant for Windows. However, that does not diminish the fact that it is a good language. I have friend who work solely on Java. Their target deployment servers are linux. But they do all their development on Windows.

Re:C# is a good language (1)

bigfam (1355969) | about 6 years ago | (#25217851)

Their target is Linux and they develop on Windows? I don't hear of that much...

In my opinion C# is not that great a language, but my background is C/C++/Objective-C, not Java. As I come across more of the strange constructs in the language, my opinion is that it is not really "designed" anymore as it is trying to add "let's make this one thing look more simple" at the expense of consistency.

I guess many people use it and like it, but I am not all that impressed with it...

Re:C# is a good language (1)

s6135 (1367437) | about 6 years ago | (#25217925)

What part of C# do you not like?

Re:C# is a good language (0, Troll)

SimonGhent (57578) | about 6 years ago | (#25218063)

What part of C# do you not like?

With most folks on /. the name on the box!

No need to actually try it, they already have an opinion.

Real world is that businesses use Windows, for good or bad.

If you have an IT career you pretty much have to use Windows. If you're a professional coder 98% chance that you'll be using Microsoft development tools and some of them are pretty good.

One way of looking at it (0)

Anonymous Coward | about 6 years ago | (#25217717)

one of computer programming's most widely used languages

C, C++, Java, javascript, python, perl and PHP are widely used languages. Pascal was an also ran back in the day, C# is the modern day equivelent of visual basic and unlikely to gain serious traction outside Windows development. The world wasn't exactly crying out for a Java clone.

c# (1)

Pants75 (708191) | about 6 years ago | (#25217857)

and a very nice language it is too! (coming from someone who pays the bills using it) I've still got a soft spot for c++ but I haven't had to use it in an age, and probably wouldn't unless I needed absolute technical control over a project, for perf reasons.

Re:c# (1)

Is0m0rph (819726) | about 6 years ago | (#25218121)

Same here. I've been doing a large project over the last 14 months in C#. I really like it.

Re:c# (1)

Seakip18 (1106315) | about 6 years ago | (#25218267)

What was the best way you learned to use it? I'm working through an O'Reilly book updated with 3.0 but would be much more open to listening someone who uses it to feed the family.

C# Usage (5, Informative)

O('_')O_Bush (1162487) | about 6 years ago | (#25217883)

According to this: http://www.langpop.com/ , C# is only the 9th most popular language, only competing with scripting languages.

It comes nowhere close to the more popular programming languages in terms of usage.

Meh. It's alright. Not great yet. (2, Funny)

Seakip18 (1106315) | about 6 years ago | (#25218033)

I'm a little surprised at the ease to attack C# but not much. It actually does a few of the things that C++ folk would like over Java, but I can understand the comparisons with Java.

Anyways, I've been fooling around with it for a while via an O'Reilly book and so far it's not too bad. That said, I don't see it much use beyond the Windows .Net Framework. Then again, that's all employers seem to want to see on the resume nowadays when it comes to development. And who can blame them?

I do have a cause for concern though....

Now, you can argue that we're not obviously open source or anything, but the language is standardized, and the entire specification is available for anyone to go replicate. Mono has done so, and I think Mono is a fantastic thing. I don't know [if] you're familiar with Mono, but it's an implementation of the C# standard and the CLI standard (which is effectively the .NET standard) on Linux, built as an open source project. And they're doing great work and we talk to them a lot and I think it's a super thing.

The fact it feels like he's faking the enthusiasm, as he did for most of this dumb interview, is slightly scary. The followup question confirms that

And I guess they couldn't have done that had you not put the specifications out there?

Well, they could have but it would have been a heck of a lot harder and it would probably not be as good a product. You can go reverse engineer it... they have reverse engineered a lot of the .NET platform... but all of the core semantics of the language, they were part of the standardization process.

You know most recently we've created Silverlight, which is our browser hosted .NET runtime environment, and the Mono guys have built a project called Moonlight which is an implementation of Silverlight that is officially sanctioned by Microsoft that runs on Linux and other browsers. It's a good thing.

Lastly...

It is possible to build alternate implementations. We are not building .NET for Linux, because the value proposition that we can deliver to our customers is a complete unified and thoroughly tested package, from the OS framework to databases to Web servers etc.

Ummm....just because it's possible to build an alternate implementation doesn't mean it will work the same way. It would absolutely kill me to use a language that implements two things differently because MS wants to hold back special class $VERY_IMPORTANT_FUNCTION that is the paramount to the language, such as database or socket connectivity.

I seriously hope that Java being opened helps chop block this. With open code, my hope is more places will buy into the language, showing MS that a "industrial-strength" language can be free.

C-sharp or C-pound (or something else?) (1)

Atraxen (790188) | about 6 years ago | (#25218119)

I'm just curious how C# is said - anyone?
Thanks!

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?