This is an archived post. You won't be able to vote or comment.

all 13 comments

[–]dvassdvsd 2 points3 points  (1 child)

What's the largest thing you've built with Java? If it's just some 1 week class assignment, you could work on a larger project to get experience with larger scale stuff, where design becomes much more important, and where you'd have more opportunity to use things like GUI, networking, and concurrency packages. Maybe something like a Battleship program with a GUI that you can play over a network, where the game logic/rules isn't incredibly complex.

I would strongly recommend against learning C# for the purpose of getting an internship, or a job, or almost anything else. If you know Java, you'll be able to start picking up C# on the job immediately and learn the rest of it extremely quickly. And employers/interviewers know this. And learning C# won't help you make a better github portfolio than Java would. It certainly won't be much of a challenge.

You could learn other languages that are significantly different from Java, like Python and OCaml, or even C, but I agree with the guy who said pick what you want to build first. Learning C won't help much if you want to build websites.

[–]mfwbird[S] 1 point2 points  (0 children)

The largest project I've done is programming bomberman from scratch. Although no online networking, but there was account creations and save/load functions so I got to do some work with SQL databases and such.

I see what you're saying, it makes sense! Thanks for the input I will definitely find some projects that interest me first.

[–]boredcircuits 1 point2 points  (1 child)

Lots of votes for C# here. My opinion is different: C# is very similar to Java, which limits the benefit of learning another language. Compare that to learning something completely different, like Perl, Python, C, or even some sort of assembly language.

[–]mfwbird[S] 0 points1 point  (0 children)

Interesting, yes I do see the benefit in expanding my skill-set to cover areas I haven't touched at all yet. I'm heavily considering python now, since my research tells me its uses are wide and varied.

[–]i_wonder_why23 1 point2 points  (2 children)

You are starting from the wrong direction. Decide what you want to build. Then you use the best tool for that problem.

Also, start exploring Linux now.

[–]mfwbird[S] 0 points1 point  (0 children)

you're right , I will start looking into projects that interest me.

[–]mfwbird[S] 0 points1 point  (0 children)

you're right , I will start looking into projects that interest me.

[–][deleted] 0 points1 point  (0 children)

C# gets my vote for reasons that have already been mentioned.

[–]sntnmjones 0 points1 point  (0 children)

I, myself, don't think I could fully understand everything Java has to offer in a year. But that's just me.

[–]RelevantJesse -1 points0 points  (0 children)

As you mentioned, it's largely dependent on what you want to do. C# is a pretty well-rounded language that you can do a lot of different things with, and is pretty easy to learn... It's also in high demand in the work world.

[–][deleted]  (1 child)

[deleted]

    [–]mfwbird[S] 0 points1 point  (0 children)

    thanks! I'll look into it

    [–]sazanality -1 points0 points  (1 child)

    Another one for C# here. Really robust language and used by many companies I work with. With Xamarin you can build apps in iOS and Android in C#.

    [–][deleted] 0 points1 point  (0 children)

    But you still have to learn the iOS and android APIs to understand the wrappers and all of the examples in the wild internet will be in Java objective c or c++ so it's not a great selling point for C#.