PDA

View Full Version : Programming Languages / Employment



thomasaaron
June 20th, 2007, 01:47 AM
Which programming language is the most lucrative for a programmer to know?

And what are someone's chances of being hired as a programmer without a college degree?

xtacocorex
June 20th, 2007, 02:09 AM
FORTRAN all the way. You can't go wrong with something made to solve hardcore math problems fast. Seeing as you forgot to add it to your poll, I shall have to refrain from any more advice on other languages.

invalid
June 20th, 2007, 02:15 AM
Depends on the applications you are developing :)
I'm currently doing a large amount of J2EE developing.

pmasiar
June 20th, 2007, 02:55 AM
c++ because it has multiple inheritance :-)

And Python begause Google hires snake charmers

hod139
June 20th, 2007, 03:59 AM
c++ because it has multiple inheritance :-)

And Python begause Google hires snake charmers

:p Got a good laugh reading that from you. I never imagined you supporting C++ first (no matter the reason)!

As for the OP, in case you did not get pmasiar's point, languages are not lucrative (multiple inheritance aside). It's learning good programming skills (which are language agnostic) that will earn you money.

pmasiar
June 20th, 2007, 05:44 AM
I never imagined you supporting C++ first (no matter the reason)!.

Obviously, I was not serious: for a stupid question - stupid answer. :-)

You cannot ask seriously what is most lucrative language. To get rich, better than slaving in Big Bad company, is to start a startup - while you are young and can take the risks.

Again, read excellent Paul Graham essays: http://www.paulgraham.com/wealth.html and http://www.paulgraham.com/mit.html

AdamG
June 20th, 2007, 09:46 AM
I'm working as a Python web programmer - pretty much my dream job :D

One thing about, for example, FORTRAN programming, is that unless you're a mathematics / computer science professor, you don't need to do number crunching. That's certainly a way to make a living, but you didn't really indicate if you're looking for a job right now, or are willing to put in a few years of postgrad work. The same is true to a lesser extent of C. The biggest use for C right now is hardware interfacing (like the Linux kernel or embedded devices) which is wicked hard work (compared to my job, at least). That's also something you're probably going to need a degree in to do well.

There are a fair number of Java jobs, and the .Net family is of course present. But let's face it... the "big new thing" right now are interpreted languages - and the reason for their popularity is that they make developers much more productive, at the expense of execution time that is dwarfed by network latency anyway. Companies are going to value this increased productivity a lot. A job with interpreted languages will most certainly be interesting and exciting, with the downside that you will be the first to go in the event of another web bubble bursting. Learning VM-based "enterprisey" languages like Java or C# will probably get you a job (eventually) maintaining code written a few years ago, with the upside that companies will always need code maintenance, bubble or not. It really depends on your situation; is job security or enjoying yourself more important?

So... yeah. Pmasier is right - it all depends on what your goal in a job is. A startup is something I'd absolutely, positively love to do (because of PG's influence, I'll admit), but it's something I'd like to do today, or in five years - not in twenty.

xtacocorex
June 20th, 2007, 12:43 PM
unless you're a mathematics / computer science professor, you don't need to do number crunching.
Not everyone realizes the power in number crunching... :D

Then again, I've started moving away from strictly FORTRAN programming due to gfortran not running on OSX properly.

Back to the post:
My advice is, since I now feel obligated to tell it after pmasiar and hod139 responded, is to learn as many languages as you can within reason. Don't go out and learn everything that isn't mainstream (and mainstream may be different to you), maybe one like Lisp or something, but keep to the C/C++, Python, Perl, Java side of things. It isn't hard at all, once you get one down, the others come fairly easy. You're more viable knowing multiple languages than focusing in on one. As long as you aren't a nerd about knowing 6 or so programming languages, someone could see that you've stepped up and learned things that could help you solve problems down the road.

I've come across jobs in my search to start my career that looked for people who knew Perl and Tcl/Tk. One or two had Python and the rest were either C/C++ or Java and required knowledge of FORTRAN. These are all engineering jobs and there is a split in the data I showed you. The scripting languages were used for extracting test data and C/C++ and Java were used for actual development. If you're going engineering, especially engineering test positions for Aerospace/Mechanical applications, the scripting languages will be a big help. I don't know about Electrical/Computer engineering jobs since I'm not one of them.

As an aside:
When you take your next trip somewhere on a plane, it was probably designed with a whole lot of FORTRAN codes.

aanderse
June 20th, 2007, 02:57 PM
unless you're a mathematics / computer science professor, you don't need to do number crunching.

tell that to anybody in the finance industry :p let's say a pension plan with 50,000 or more members is having a tri-annual pension evaluation and each members commuted value must be calculated. you need a database and some serious number pounding to get through that mess. each member has say a dozen variables associated with them personally, and then about 2 dozen that need to be calculated.

now this is a pretty tame example because there are only roughly around a million or so computations to make, but i thought i'd share 1 example. my friends have much larger data sets to talk about if they are working in data mining and whatnot, so just remember heavy number crunching happens in the "real world" too ... and often high paying jobs.

thomasaaron
June 20th, 2007, 03:25 PM
How important is a college degree if you can prove yourself as a programmer?
And how helpful would it be to get Java certified through Sun Microsystems?

tbrminsanity
June 20th, 2007, 03:28 PM
Java has the most potential of any of the programming languages, but C++ and C# are the most powerful and can provide the most to a programmer. There are things I can do in C++ that I can't do in any other language (or at least not easily).

AdamG
June 20th, 2007, 06:01 PM
Thomas: A college degree is important - in most circumstances, more important than your skill as a programmer. I hate it too, but it is. I say this as someone with (A) no college degree and (B) a part-time job as a programmer anyway.

The important thing, as I see it, is that a four-year degree is the equivalent of a life-time "in." I had an 'in' to my current job because I had already been working in the same organization doing tech support and got a couple of good recs from my teachers (I work and study at a community college). I had been trying to get into freelance programming for some months before that but the simple fact of the matter is that they will throw your resume away without a second glance if they don't see a degree, period. It doesn't really matter what experience you have (unless we're talking decades of it), what languages you know, how much you've "proven yourself" as a programmer - you will simply never hear anything back. Unless they know you personally, an employer will not hire without a degree.

This all became a lot clearer to me after I got the job... I spent a long time convinced that the next Craigslist posting would be it. (It never was.)

I thought about getting certs as well, but I ended up not getting any, so I'll let someone else talk about those.

Majorix
June 20th, 2007, 06:55 PM
I believe the answer to this poll should be Java. Because I remember reading about it somewhere.

pmasiar
June 20th, 2007, 07:05 PM
c# is not even mentioned in the poll - and it has about the same position, or even better than Java, at Windows-only shops. And you know there are too many of them.

Majorix
June 20th, 2007, 07:12 PM
Yeah C# should have been in the poll. Visual C# earns you a lot in Windows-based workplaces. Maybe he meant "Linux only"... And you can always select Other right?

tzulberti
June 21st, 2007, 03:29 AM
At lest in Buenos Aires (Argentina), Java is one of the most wanted...

Rab22
June 21st, 2007, 03:58 AM
COBOL anyone? ;)

daxumaming
June 21st, 2007, 08:18 AM
I like C++, most software developers in my country either go for C++ or Java, especially for heavier stuff. Unfortunately, almost all require win32 based apps and they're expecting source codes from MS Visual C++. .Net is catching up though and Basic.

bioShark
June 21st, 2007, 08:58 AM
Hi
I have also seen that you have missed Database programming.

I am from Romania, and currently working with Oracle PL/SQL. It is very rewarding, and the good news is that there aren't many specialists in this field.
I also work with Php, which is very sought after, but there are too many specialists in this field.
Java is also a big programming language around.
But the best, as in the most complete programing languages are: C and C++. All time masters, if you ask me.

c.u.