Live data from Hacker News

Ask HN : Which should I learn : C# or Java

news.ycombinator.com

61–70 of 87 posts

Re: Ask HN : Which should I learn : C# or Java

#61
One important thing I think is being missed in this conversation is the vibrancy of the .NET community, much of which is C# focused. There's a very active community of .NET devs out there that aren't doing things the Microsoft way, creating useful and popular open source libraries and sharing that information with other devs. The Dev Div at MS is extremely active in the community as well. If you look at how the new ASP.NET MVC Framework is being rolled out (open source, multiple rounds of community feedback) and the inclusion of jQuery AS IS (not extended or modified) in the MS stack you'll see a big difference from the MS you think you know.

Re: Ask HN : Which should I learn : C# or Java

#63
post #55

Earlier quoted context omitted.

From my experience - Java will get you a much larger audience, but .Net audience is more happy to pay for tools/libs. In .Net pay-for is the norm, in Java open source is the norm. Opportunities on both sides. The main other issue on the .Net side is if you get in the way of MS - the will just run over you and make you irrelevant.

Do you have examples of MS running over companies that got in the way? What should I avoid to prevent that? I am thinking of selling a somewhat unconventional and new (for the mainstream, like Lisp) programming tool. I thought that the .NET community will be less reluctant to try such a thing because MS is pushing new things like F# too. What do you think?

Microsoft is pushing (relatively) fresh ideas into the mainstream, but in my experience the overwhelming majority of .NET programmers aren't interested in new things that don't come from Redmond. caustic said it more generally: C# has some nice language features, but Java has a more sophisticated and open-minded community.

Re: Ask HN : Which should I learn : C# or Java

#64
post #56

It seems, we are pretty close to epoch where C programmer to be treated as assembly guru nowadays who can read machine codes right out of hex dump. Man, learn C/C++ first, I beg you!

He has done that already: "For the record, I ... code in c, c++ on the day job."

Re: Ask HN : Which should I learn : C# or Java

#65
post #9

Earlier quoted context omitted.

Man I know that I'm gonna get burned for saying it, but java isn't all that it's cracked up to be. I've worked for two companies that are java-based and both experiences have been horrible. Except for a handful of people, every java "engineer" I've known has been a siv. The ones that rock happen to just know java in addition to experience in other languages. Point in case, we are implementing some new web apis soon.…

siv?

Simian immunodeficiency virus

Re: Ask HN : Which should I learn : C# or Java

#66

Earlier quoted context omitted.

Learn Scala: http://www.scala-lang.org

Exactly. If you need to use Java for some reason, like getting at their libraries, you will do well to use anything other than the Java language. The platform is good. The language is 20 years behind the state of the art. Unless you are forced to work with other people that can't learn a language other than Java, there is no point in using it. I lean in the direction of Clojure, but lately the constant fanboi-ing is…

"constant fanboi-ing is really putting me off."

Rejecting a language just because it is popular seems just as misguided to me as choosing a language just because it is popular.

Can't you just ignore the boi's and use Clojure anyway, if it's a good language?

Re: Ask HN : Which should I learn : C# or Java

#67

I would go with C#. There are lot's of people who say that you are subject to Microsoft's directing of the language, but if you go with Java, you are subject to Sun/OS direction just the same. C# is a great language and ASP.Net is great for the Web. It's not popular to advocate a Microsoft product here but I'm very happy with C# and ASP.Net. Your goals will be the ultimate factor in your decision though.

"if you go with Java, you are subject to Sun/OS direction"

Not as much, now that Java is open sourced.

Re: Ask HN : Which should I learn : C# or Java

#68
post #18

I've noticed that no-one has talked about the cost of using either. Yes the Java IDE's are somewhat inferior to MS's, but you can get everything you need to write, develop, manage, and host Java applications for free compared to MS; the OS, IDE, Web Server ... all cost money which can be a substantial amount for commercial purposes.

I love IntelliJ IDEA, it kicks some serious ass: http://www.jetbrains.com/ The last time I used VS was with VC++ 6.0, so no clue how IntelliJ compares.

JetBrains has an add-in for VS called Resharper: http://www.jetbrains.com/resharper/

I wouldn't consider using VS without it.

Re: Ask HN : Which should I learn : C# or Java

#69
post #45
post #40

Earlier quoted context omitted.

You're exactly right, those are .NET problems not specific to a language, and not really problems for a hacker. There are multiple open source ORMs that take full advantage of the language features (like LINQ) and aren't subject to MS's whims. I think that "constantly balooning specification" is an overstatement. Look at the release timeline: - 2002: Version 1 (with VS.net 2002) - October 2005: Version 2 (with VS2005…

I don't think the time-line has as much to do with it as the scope of the changes do. Again, this is personal opinion; and I'm speaking from the angle of someone who has spent many years doing consulting work on the Microsoft stack, and having to deal with figuring out which ways the 9-to-5'ers are going to break things next. Version 1.0 of the C# specification clocks in at 405 pages. There was an addendum in 1.2 tha…

Not going to argue either way (I do like both Java and C#, choosing one over the other depending on what I want/need to do)... but don't you think most enterprise languages mature over time too?

Java seems to be no exception: http://en.wikipedia.org/wiki/Java_version_history

Re: Ask HN : Which should I learn : C# or Java

#70
My startup was recently looking at platforms to target windows effectively. We just spent a lot of wasted time looking at .NET. Perhaps because it was because we are very cheap, but we couldn't find decent (well written) documentation. Also, visual studio is a bit confusing after working for a while in a linux development environment.

I then remembered that I was already familiar with Java syntax, and that if we needed speed, we could always code subroutines in C/C++ and link them through JNI. The thing that is nice about Java is the amount of documentation and tutorials (and source!) lying around. Of course, working with a big IDE like Eclipse will be a big change as well, but we are going to go with Java.

By the way,does anyone here know if it is possible to create a salable client side application using something like Python? It is my impression that it is a bit too easy to disassemble without including some sort of heavy duty DRM scheme that wouldn't be worth the effort. If it isn't, does Java suffer from the same problem since you compile to bytecode?

Post reply on HN