Web Development

General discussion


What language to learn?

By starfish0226 ·
I am a full-time student. Recently I got a position as a software developer using PHP. Fun times.

While I've dabbled in the various non-Windows languages like Perl, Python, C, and C++, I never really touched the Windows stuff such as VB or VC, or even .NET. Perhaps it was my hatred of Windows. Perhaps it's the bulky nature of coding for Windows. Perhaps it's because I just like PHP. I don't know.

I want to learn a new programming language. I plan to take a year doing it (since I have school and a full time job). In other words, I will take my sweet time with it.

First, could you state your experience with programming (time, languages, and skill level). This is particularly important if you plan to bash or promote a particular language.

Second, explain what makes C# different from other languages? What makes it worth adopting, and what are its strengths and weaknesses? Unfortunately, I am relatively clueless when it comes to all the new stuff that Microsoft keeps pushing out.

Third, which is probably a better investment, VC++ or VB? I happen to like OOP, and VB lacks this. However, VB production time is less so I imagine the skill is worth more in the market (or am I wrong). For projects that would take 2 - 3 people coordinating, which would be better?

Fourth, this is sort of a side question, but I keep seeing Java being pressed as a highly worthwhile language. What makes it so worthwhile, especially when compared to C or C++?

Lastly, where should I put my focus if I had to choose any language to learn/refresh next, assuming I wouldn't be using it (work related) for a minimum of six months (in other words, ignoring fading languages). Which do you think is a secure investment in terms of my time and effort? Which is most scalable for large and small projects?

This conversation is currently closed to new comments.

Thread display: Collapse - | Expand +

All Comments

Collapse -

Become a MySQL Guru

by Bucky Kaufman (MCSD) In reply to What language to learn?

If you're a new programmer, actually working in the field on a PHP job, just to do the job you have better, you'll need to become a Guru for the version of MySQL that your site uses.

Every application, even video games, is just the front end to some sort of data manipulation. MySQL is the database of choice for PHP deelopers.

Also, this early in your experience, you'd do well to actually pursue the MySQP/PHP developer certifications. This will ensure that you expose yourself well to all of the facets of the platform, and not just what you discover on your own. It will also assure your employer that you've got the chops to keep your job and grow in it for some time to come.

Collapse -


by jvilleg1 In reply to What language to learn?


I have college experience in C++ and I am currently taking my second semester of Java. Java is promoted so highly because of it almost 3,000 class library which has a lot of code already written for you--and the number is growing. If I had to pick any language to program in, it would be Java because believe it or not, Java is running the the Mars rovers, and aerospace is the field that I want to go into.

Good luck!
John Villegas

Collapse -

Not as simple as it seems...

by Four-Eyes In reply to What language to learn?

Well, the job market so far tends to lean towards techies proficient with Java and .NET technologies.

Anyway, I think that what kind of programming you want to end up doing for the long term will play a big part in choosing what language you'll want to learn. If you're planning to go into web development, Java (J2EE) or .NET (VB.NET and/or ASP.NET) would be a wise choice. If you want to do server-side programming, I tend to go with J2EE (based on my experience), If you want to do application or game programming, C++ or Java is a good place to start.

I've been programming using VB for the past 9 years and ASP for the past 5 years. But for the last 3 years, I've been building up my skills with Java/J2EE as most of our projects are now being done using said language. I'm actually cramming for the Sun Certified Java programmer exam as I think it's going to be a good investment. IMHO, if you love OOP and cross-platform technologies, you'll love Java!

Anyway, I'm sure you'll find many more opinions and good advice here from much more experienced chaps other than me!

Best of luck to ya!

Collapse -

OO the way to go

by xtrac222 In reply to Not as simple as it seems ...

In my limited experience (8 years VB/18 months C#) I'd advise not to get too caught up in the actual language(s) but certainly take on some form of OOP learning asap.

It was pretty late in the day that I took any notice of UML/CASE tools but it was the best thing I've done and I recently worked with a Java developer who found picking up C# very straight forward simply because of his OO approach/experience/methodology.

An excellent beginners book I read was http://www.apress.com/book/bookDisplay.html?bID=293

Collapse -

There's nothing like family...

by andy In reply to What language to learn?

You have already gotten to know one member of "The Family", PHP, and you've been introduced to The Mother herself: C. Thus you might find the learning easiest if you continue to deal with more of C's children: Java and C#. The latter two are so similar they are hard to tell apart, and if you're learning both at the same time that can be as much curse as blessing (I'm Sun Certified on Java myself but I've also got some experience with C# through ASP.NET). Both are pure OO, both are scalable from small to infinitely large, and as far as "bulky coding" goes, both platforms roll out so many classes (thousands) that programming in either one means becoming a skilled researcher as much as anything (and that won't be unfamiliar to a PHP guy since there are almost as many functions in its total library).

But don't let either one distract you from getting and staying very good with the language you're using for your job right now -- PHP. There's an old saying: "Dance with the girl what brung ya." And remember: the best language for any job is the one that best solves the problem you're working on.

Collapse -

Don't forget scripting & other special-purpose languages

by Dan Cooperstock In reply to There's nothing like fami ...

I have over 20 years of experience in a pretty broad range of jobs. The following are some of my thoughts about what languages to learn (not necessarily immediately).

High-powered OO is all very well for many purposes, but you really want to have one or more scripting languages and related tools under your belt for quick-and-dirties.

And don't forget slightly special-purpose languages / development environments like PowerBuilder, which I have been using for years to build GUI apps that are strongly database-driven (i.e. composed mainly of data input & reporting). PowerBuilder is kind of like VB on steriods, because its database access and manipulation is so much stronger and easier. And its GUI stuff is very much on a par with VB, which is of course miles beyond Java and C++. Mind you, the Windows Forms designer in .NET, that's available to all supported languages, is also pretty good.

Collapse -

It depends

by Gast?n Nusimovich In reply to What language to learn?

The total worth of a programming language has to be evaluated in a similar way as the total worth of a natural language: context has a major impact.

"Should I study C# or Java ?" It is very much like " Should I study French or Japanese ?".

It depends on your present and future line of business (for both questions, actually). Some facts are certain, though. I believe that both Java and C# could be sure bets, but your particular context could incline the scale towards either one or the other. If your context puts you closer to .NET, I should suggest caring for C# and VB.NET and dropping the rest of the .NET languages.

Related Discussions

Related Forums