Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations SkipVought on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Learning path: Java or .net?

Status
Not open for further replies.

jsbtech

Programmer
Jul 27, 2007
5
0
0
US
I have been a VB6 programmer for 4 years at a small manufacturing company with poor work environment, no career growth, no company vision and prospect. And, you bet, I am about 18% underpaid. For those reasons, I have been looking for another job for 2 months.

Actually the job market looks great right now but I still have not found any good company which is willing to hire me (or even give me a face-to-face interview). Why? Because of the limitations of my skills just in VB6, Access database, HTML and JavaScript. I feel that I am getting stuck in my career.

For those reasons, I know it is time for me to pick up new language so I look at Java and .net.

First, since I have the background of VB6, I should be able to pick up .net (C# or VB.net) fast.

Second, I took a Java J2SE class 5 years ago. I found that I liked it and I got an A in the class. Plus, if I isn't wrong, getting the first and second Java Certificates seems like faster than Microsoft's ones.

For job openings, I think both Java and .net have about the same opportunities in the market. My dream is getting in a big corporation and work on any big enterprise system or software.

So now my question is: Jave or .net? Which one should I go for? Any comment?

JSB
 
In you case I would recommend Java. If you go .Net you must forget everything you have learned in vb6.

If you go Java then learn things like EJB, hibernate, JSF/struts,MVC, MVC2... . In other words JEE (they lost the 2 somewhere along the road). After that .Net becomes a lot easier. And you should be able to use your Java skills in .NET without a problem.

For both you need a good understanding of OO which is a big step for vb6 developers.

Christiaan Baes
Belgium

"My old site" - Me
 
Oh, and you won't be doing this ini 2 weeks time it takes a while to make the change. I would count on at least a year.

And if you end up in a Java or .NET class where they start by playing with GUI elements then leave it is propably a waste of time.

Christiaan Baes
Belgium

"My old site" - Me
 
Yes I also like Java more than Microsoft. However from my current job I am proposing my bosses to migrate VB6 to VB.net due to the obsolete of VB6. So eventually I might be getting in but my "eventually" means end of this year, sometimes next year, or even many many years later. (Hopefully I am already at a better company at that time) :>

When you mentioned about Java or .NET class, I do not plan to take any because I am already going for my Bachelor's Degree in the evening and I will just learn Java on my own.

You got to make yourself busy if you want more. That's life!
 
If you do move from vb6 to vb.net at work, maybe you could get them to pay for a class on it?

I found going from vb6 to C# much easier than vb.net(tried that first). It is much different, so it forces you out of vb6 state of mind. If you are going to write vb6 code in vb.net, then there really isn't so much point in learning it.

Hope this helps,

Alex

Ignorance of certain subjects is a great part of wisdom
 
So now my question is: Jave or .net? Which one should I go for? Any comment?

Is there any reason you can't learn both? You have a lot more options in this case. It will take longer to become proficient in both, but you should be able to learn enough to hold a job relatively quickly.

[monkey][snake] <.
 
From VB6 to C# is easier than VB.NET (from Alex)? I am so surprised! Is there more information or comments about this?
 
It's simple vb.net and vb6 are syntactically the same or so they seem. An MS have helped a little by providing backward compatible libraries. So you can just use you VB6 code and port it to vb.net. The code will still work but it won't be taking advantage of the OO way of thinking. An since it is a fast and easy way to go from VB6 to .net most will take that route (and regret it a year later).

Going the C# route will most likely make you rewrtie and redsign the app. But again you could just prot to vb.net and prot that to C# (it will also work with the vb libraries)

If you go the Java way you won't have this problem, or less (All language permit you to write bad code).



Christiaan Baes
Belgium

"My old site" - Me
 
Chrissie1 - you read my mind. See anything in there that should be brought to my attention?

Ignorance of certain subjects is a great part of wisdom
 
LOL read my mind again. IE6 sux!

Ignorance of certain subjects is a great part of wisdom
 
After all of your inputs, I guess I am still confused. I just want to know which one's learning curve is fastest: VB.net, C# or Java. Which one will give me most of the fun?

Just before getting in the "real learning thing", it looks like each of them have a lot of prerequisites as below:

VB.NET or C#: first need to install Windows Server, SQL Server, Visual Studio and IIS.

Java: first need to install Linux, Apache, MySQL, JAVA.

Wow, looks like I need to learn a lot before I get on the real road. How many months (or years) I need to spend? My god, I am getting old.

By the way, another question for you guys is I am also trying to get a Bachelor's Degree in part time. I found a college (not famous at all) which provide adult program which is supposed to be faster.

An retired HR person (in midwest) told me it does not matter which college and what degree you get for job hunting if you have years of work experiences. However, another IT pro (a VP of IT department of a mid-size company) said getting a degree in tech field is more important than a "out-of-field" degree fast (unless that is an MBA).

Any comments on this?
 
If done right the learning curve is the same for the three.

And you wll need to install a lot more then the things you describe.

I would say a degree in the field is important but I would never join a company that only looks at your degree. And I normally refuse to do the first interview with the HR-department. But that's just me.

Christiaan Baes
Belgium

"My old site" - Me
 
I have an out of field degree and I'm doing OK.

You don't need to worry that much about installing the VB or C# express editions. They ship (I believe) with all the SQL Server components you need (but get the express edition of SQL Server anyway, databases are important to know). If you have XP pro then you already have IIS (don't really need that anyway). And you don't need windows server.

For java, all you need is the java sdk and notepad. There are also free ide's available like net beans and eclipse.

How many months/years you need to spend depends on how much time you have to put into it. If you've got about 6-8 hours a week, I would say you can learn any of the languages and develop a fair understanding of OO within about six months.

Hope this helps,

Alex

Ignorance of certain subjects is a great part of wisdom
 
Hey Alex, I never knew Microsoft provides Express versions for free. That's a great help!

However, how deep the features can I learn from the Express versions? Will that be enough to lead me for the first MCTS certificate?
 
I am not sure, jsbtech. I have not done any looking at Certifications. I know the main limitations on SQL Express are Database size and the lack of support for Integration Services (and maybe CLR functions too?)

Limitations on VB/C# express are the lack of things like deployment projects and some of the database stuff.

Here is a forum wehre you can check about the MS Certs: forum468

For learning the language, this stuff will be sufficient though.

Good Luck!

Alex

Ignorance of certain subjects is a great part of wisdom
 
No company likes being told they need to rewrite their applications just because a newer language is available. There are many reasons to change languages as time progresses, and if you truly want your company to make that change than someone in the company (perhaps you) needs to make a case for that change.

There are several places you can start. At the heart of the matter is the fact that a business exists to make money, and an IT department exists to support that cause. However, it is possible for an IT department to reduce the costs of doing business and this is usually where I would start when I want to make a case for adoption of a new set of standards, re-developing an aging application or process, or
even building a strategy to begin researching a migration.
The worst way you can approach this problem is by having an unformed set of arguments held over a water cooler between yourself and random business people, discussing the failings of the technology currently in place. For most of the users in your company the systems probably are working ok. Sure they will have their list of problems, but when it comes down to it, they likely haver only a list of either very small issues or very large and abstract features they would like.
In order to make a plan you have to have some solid foundation and logic that will convince people that migration will make a larger difference then standing still. Basically it's about creating a logical proposal thats shows how the company will save money and/or reduce risk. If the savings or risk reduction outweighs the cost to a great enough degree, the company will likely go for it (though some people will stand against change no matter what they are shown). Typical starting points are the risks in staying with an unsupported technology, the greater development costs of language X over Y, etc. However you also need to take into consideration how the IT team will support your company's vision, whether your customers, distributors, etc will be demanding greater integration or could be convinced to integrate better in order to reduce costs involved with sales and purchasing. There is also the cost of active support to consider, the cost of not upgrading hardware to newer OS's to support what has become a legacy application infrastructure, etc.
At all times it is about saving the company money. In some cases you won't be able to make a solid case, in some cases you will. Always make sure you list all of the negative effects or costs in your plan, even if that requires talking to some of the business units to determine what they are. It should not seem as if your pushing a personal agenda, but instead are doing what the company hired you to do, determining how IT can be saving the company more money.

-T

Best MS KB Ever:
 
I use VB.NET now and I love it. But,...
read most help wanted ads and the're mostly C#.
Along with C#, they want an understanding of OOP.

You can use C# pretty much the same way as VB.NET and not
be to concernced about OOP (like VB6).
I would advise using C# and applying as many OOP principals
as you can. The advanced OOP principals are a b*tch to
understand and apply, at least for me anyway.
 
Quickest learning curve from VB6: VB.Net

More demand in the workforce: C#.Net, but a lot of demand for ASP.net using vb or c#.

Nothing against java, but with .net incorporated most of the java concepts, the demand for java programmers has gone down.

If you are looking for job opportunities down the road, go the .net route.

Also you can go download visual studio express and sql 2005 express for free that gives you most of the functionality.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top