6

I saw a thread similar to this, but the reason I'm asking this is because my situation is different.

I've been a tester (automated and manual) but I have a good Java programming knowledge although I haven't worked as a programmer.

My company is considering to move me to a C# programming role. Will it be hard for me to learn C# without any prior experience in programming?

Thanks

2
  • 2
    I think not. Everyone's different, though. I think you'll find that SO is a safe place to get some questions answered when you meet this or that roadblock. Good luck! Commented Aug 24, 2010 at 6:03
  • With perhaps the exception of moving from imperative to functional or vice versa, learning a new programming language shouldn't be hard for anyone with a bit of experience and skill. Commented Aug 24, 2010 at 6:46

9 Answers 9

3

My 2 cents is that once you understand core concepts of programming you can move to any programming language. Try and remain as language agnostic as possible.

Specific to your question, you should be able to make the transition without much effort at all.

Sign up to request clarification or add additional context in comments.

2 Comments

Thanks for your answer. But wiithout industry experience in Java..is it easy to work as a C# programmer?. I learnt Java in the university...but did not work as a programmer. I have only got system testing experience.
Regardless of whether or not you have worked in industry. It is imperative that if you would like to become a C# programmer that you toy with languages at home. At the end of the day, it's not only code that makes you a good developer, but knowing the industry and being able to solve real world problems with the code you write. Programming for me is not a job, but a lifestyle and I attempt to keep up to date (if you can do such a thing in our industry) :)
2

C# and Java are so similar you won't have any problems at all. That said, there are a few differences, this page does a pretty thorough job of demonstrating them.

One thing it doesn't mention is LINQ, which is definitely different as we're seeing the two languages start to diverge a bit more.

2 Comments

Thanks for your answer. But wiithout industry experience in Java..is it easy to work as a C# programmer?. I learnt Java in the university...but did not work as a programmer. I have only got system testing experience.
I second pieterG's response to this one. Honestly, programming is a mode of thinking, and what you need is that process to be a good programmer, regardless of language. When you use C#, the roadblocks will be syntax, aka a Google problem. The method of thinking behind the code is what matters, and that's what you need to develop before any coding job.
0

I have difficulties combining the statements "I have good Java programming knowledge" with "without any prior experience in programming". How can you have good Java programming knowledge without any experience in programming?

That said, if you are an able Java programmer, moving to C# should not be very difficult.

2 Comments

Because he practices at home? I have virtually no experience in the programming world and yet I've been programming since I was 11. That's what he meant.
Sorry if I confused u..I learnt Java programming in the University...but I did not work as a programmer...hope that makes sense :)
0

Speaking strictly about syntax, C# pretty similar to Java so you should have no problems there (at least it will feel familiar at first).

1 Comment

Thanks for your answer. But wiithout industry experience in Java..is it easy to work as a C# programmer?. I learnt Java in the university...but did not work as a programmer. I have only got system testing experience.
0

Moving to C# will not be a problem at all.

Since you already know Java, you'll find many concepts in C# easy to understand.

In fact, it's always a great thing to learn and work on multiple languages throughout your career, especially if they cover different paradigms.

4 Comments

I wouldn't consider C# and java different languages. I'd go with a different type of language (like ruby or scala) to get another perspective.
Thanks for your answer. But wiithout industry experience in Java..is it easy to work as a C# programmer. I learn Java in the university...but did not work as a programmer. I have only got system testing experience.
Like Java, C# as the first language in your job should not be a problem.
@Pablo Thanks, I've updated my answer to mention "different paradigms"
0

I've had 4 programming jobs in my life, and for 3 of them I had no experience at all with the language before starting the job. The 1 for which I did have experience ended up being a complete disaster of a workplace.

If there's any correlation between how well you know a specific programming language before taking a job, and how you can get/do a job at a place where they use that language, I have yet to see it in my 10+ years. I'd say it's probably one of the least important factors contributing to your success.

Unless you plan to work at a company for a very short period of time, you'll learn many new things, and probably new languages, while working there. Whether you happen to know the one they're using now is like how tall Michael Jordan was when he was in high school: after a few dozen/hundred/thousand hours of practice, completely irrelevant.

3 Comments

sorry... u mean to say that previous work experience as a programmer (in any language) is not relevant to start a programming job? (if u have the knowledge?)
Programming knowledge is very important but it is far more important to have a general programming discipline and attitude than knowing the nitty gritty nuance of every single language. If I were hiring for a team I would be looking for someone who shows a good understanding of problem solving, analysis, defensive / safe coding, team work etc. over someone who happens to know every undocumented return code some method might return but writes reams of spaghetti code.
shana: No, I'm saying that vanishingly few languages have a shelf life over one year, and nobody here (AFAICT) really wants to be the COBOL programmer of the future.
0

Without any industry experience in Java it won't be easy to work in... Java. What I mean is you will have exactly the same difficulties in C# as you would have in Java. The language change won't be the problem -the big difference will be working with real world requirements and practices.

Don't take me wrong, I don't mean you will have problems: you'll just learn a lot of new things. If you have a solid "conceptual" base switching from Java to C# will be easy, I did the same pretty much effortless.

Read a good book (for ex. Troelson's Pro C#) and you'll quickly pick up the most important differences. Then with time you'll learn the other stuff that is really different from Java (for ex. WPF, Linq, etc.).

In conclusion, don't be afraid and go for it!

Comments

0

C# should be trivial to learn if you know Java. The differences at the programming level are largely syntactic for the most part.

The difficulty (and this is the same with Java) is the language is just an enabler for a large number of libraries and technologies. So you could have no trouble picking up C# but you might hit a brick wall learning WPF because there is no analog in Java. etc. Or you might be trying to write ASP.NET but you have never learned JSP / Spring in Java so have nothing to relate to.

The best strategy is start small, get familiar with the constructs and then try to implement something useful. e.g. in WPF, you could write a simple Twitter client using webservices. In ASP.NET you might write a simple blog app hooked up to database app.

Once you get the basics and assuming you follow best practice, it should be easy enough to expand outwards.

Comments

-1

If you have programming knowledge skills it would be not very difficult to move into c#. In my experience coming from PHP I suggest you the following steps,

Books:

1- C# 4.0 in a Nutshell The Definitive Reference

2- Apress.Pro.ASP.NET.MVC.Framework

Tutorials:

1- check the website http://www.asp.net and probably the best thing could be to move directly into MVC

2- check the nerddinner tutorial http://nerddinnerbook.s3.amazonaws.com/Part1.htm in order to get in knowledge of how this work.

3- Download Nerddinner code http://nerddinner.codeplex.com/

4- use entity framework instead of linq based on MS election for the future

5- Download some starter-kits from http://www.asp.net/mvc/samples/mvc-music-store to check the way it work.

Hope it helps. brgds,

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.