PDA

View Full Version : What programming languages are used in the real world?



HokeyFry
August 2nd, 2006, 05:57 PM
Alright, the title may be a bit misleading. When I say real world I mean after college what languages should you know to make it in the professional world?

mat1t
August 2nd, 2006, 06:11 PM
I've just finished a work placement, and they used the following skills for programming

C
Delphi
C#
SQL
ASP.NET

mostwanted
August 2nd, 2006, 09:04 PM
Java is used lots. And XML with XSLT if you consider that programming.

apjone
August 2nd, 2006, 09:19 PM
Visual Basic
PHP
HTML
BASH
is what i use on a daily basis

Grey
August 2nd, 2006, 09:25 PM
I worked as a web developer for a year.

ASP
C#
ASP.NET
SQL
CSS
HTML/XML
JavaScript
VBScript


It was mostly javascript/ASP/SQL.

bbzbryce
August 2nd, 2006, 09:38 PM
I work for a relatively new company WorldViz (http://www.worldviz.com) writing plugins for their software Vizard (sorry windows only) which uses c and python.

I also do web development for them in php and sql.

supirman
August 3rd, 2006, 03:51 AM
I work as a software engineer for a telecommunications equipment manufacturer, and in my first six months I've used:

c++
c
python
assembly (both ppc and x86)

I've worked on everything from bootloaders, to kernel mods, device drivers, daemons, applications, scripting, etc. We pretty much do a bit of everything as we have our own custom version of linux that we run in our embedded systems.

Also, we currently have about half of our software engineers working on a huge Java applicaton.

Strong programming fundamentals and ability to learn quickly is more important than learning any individual language.

xeero
August 3rd, 2006, 03:59 AM
It really depends on what industry you're talking about.. and there are many industries that require software.

I work in aerospace, and even within our company it depends on which project you're working on. I've been doing C during the last five years, since it's for embedded software and instrumentation. C++ and Java are also used here, but I think it's for gui or signal processing apps.

if you're doing application programming, i think those will serve you well (C, C++, Java). if you want to do web programming, then the ones mentioned in the previous replies would be good. i believe python, php and perl are very popular.

then there are lots of other technologies that are useful (XML, etc). so much to learn, so little time..

PsiPhi
August 3rd, 2006, 04:16 AM
Depends on which 'Real World' you live.
I worked as a developer for a while, now I test software.

It's probably resonable to say that most serious applications are written in a compiled language [C, C++, C#] etc., while lesser applications, user interfaces, web applications are written in interpreted languages (scripts) [Java, VB, Perl, Python, etc].

The thing is to know where you want to go with your programming and that will indicate what languages will be best for you.

Now, before the rest of you start a flame war, yes I know you can write very serious applicaitons in scriptiing languages, and some scripting languages can be compiled too. Just trying to give some (my) perspective.

thumper
August 3rd, 2006, 09:01 AM
Since I left university (some 12 years ago) I have worked mainly in C++, now mainly in python, but I have also used Java, perl, Javascript, SQL (for stored procs, functions, triggers et al), sh (or bash), VB(A).

Those are the main ones (or me at least), but by no means the only ones.

Lord Illidan
August 3rd, 2006, 09:08 AM
From what I see in newspaper vacancies, the most required languages are c++,java, and c#.

Harleen
August 3rd, 2006, 02:28 PM
In my erxperience the language that is really used doesn't matter that much. If you know one of it quite well, you don't have much problems switching to another.
And even if you learn the most widespread language, than your future employer will surely use some exotic language. ;)

I'm writing software for military equipment. Here we use the following languages:
Ada (unfortunally quite usual in the military sector)
C++ (for GUI)
C (for embedded development)
Matlab (basic development of algorithms, that are later implemented in Ada or C)

sapo
August 3rd, 2006, 02:39 PM
I use at my work:

PHP for webbased stuff
C# for windows based programming (desktop applications)
and Python as a life savior, yes python always saves my life when i no other programming language can do something...

Have you tried to export an old .DBF database (clipper, foxpro) to a firebird database? i had and guess what was the solution... python of course :)

Ferio
August 3rd, 2006, 05:29 PM
Give this a look to get a general idea: http://www.tiobe.com/tpci.htm

xeero
August 4th, 2006, 09:09 AM
Give this a look to get a general idea: http://www.tiobe.com/tpci.htm

wow, thanks for the link! cool web page.

commodore
August 4th, 2006, 04:38 PM
SQL? VB? ASP? What's wrong with the world?!

mat1t
August 4th, 2006, 04:44 PM
SQL? VB? ASP? What's wrong with the world?!

It has problems that need solving, so the above tools are used! ;)

SQL's pretty good, but not really got into VB and ASP. (don't really intend to either)

sidlinux
August 4th, 2006, 05:04 PM
It depends what your needs are.

If you're doing web development, you may want to be familiar with LAMP-linux, apache, mysql, and php.

If you're working for a big company, you would most likely encounter J2EE, in which you would need to learn Java and whatever related technologies it may use. Some big companies use .NET, so that means you would need to learn either VB or C#.

For a small company, expect LAMP, .NET, or asp if you're doing web development.

If you're building something like a shopping card, you can either use PHP or asp, but since this is an Ubuntu forum, I recommend you learn PHP, which means get your act together with LAMP. However, don't forget to look into AJAX - see its power of ajax by looking at Google maps and compare it with Yahoo maps. You'll see the difference.

Don't try to learn everything. There's so much stuff to learn out there. However, remember one thing. Most people's lives on the internet are dictated by the use of a web browser - which means put more emphasis on web development.

Be a specialist. They might know what your strategy is, but the question is can they stop you? I think more people are successful by doing this instead of having general knowledge. My point is if you're going to do web development in PHP/MySQL, that all you should do. If it's python, then just do python, etc...

The bottom line is, do whatever makes you happy. You only live twice.

Sidney

commodore
August 4th, 2006, 07:43 PM
You only live twice? :D

myk
August 5th, 2006, 04:28 PM
I'm developing embedded system firmware at work, so...

ASM (for many different types of hardware)
C
Verilog HDL
VHDL
C++ (For the occasional windows app that we need)

The software you use in "the real world" can vary a lot from person to person depending upon their job, training, and background. I'm a computer engineer so im a little more low level than some ;)

buyu
August 5th, 2006, 05:10 PM
It's probably resonable to say that most serious applications are written in a compiled language [C, C++, C#] etc., while lesser applications, user interfaces, web applications are written in interpreted languages (scripts) [Java, VB, Perl, Python, etc].

Is Java an interpreted language?

Ray

fluffington
August 5th, 2006, 09:39 PM
Is Java an interpreted language?

Sorta. It's usually compiled to bytecode (not machine code), which is then interpreted.

rko618
August 6th, 2006, 09:28 AM
I work for a small software company and everything we do is this wonderous web app in J2EE (Enterprise Java). Personally I'd rather be using some more exciting like Python or Ruby but I'm not the boss.

deepspring
August 7th, 2006, 09:24 AM
According to a quick search on Seek.com.au, the most common ones in Australia seem to be:

Visual Basic, C#, C, C++, Java, Ada, PL/SQL (oracle).

X.Cyclop
August 7th, 2006, 09:15 PM
In the real world?

C
C++
Asm

Why? They're the best. They don't require ANYTHING and are widely used for everything!.8)

LordHunter317
August 8th, 2006, 01:15 AM
Except a compiler and toolchain and a standard library (well, not for assembly).

[h2o]
August 8th, 2006, 10:53 AM
My "real life" work experience isn't that big, but this summer I have worked as a programmer and I have been using mainly C/C++ and Python. Also some SQL and shell scripting.

As someone said: It will depend heavily on the company and application. I try to keep an open mind and use whatever programming language I get put in front of me :)

slakkie
August 8th, 2006, 12:41 PM
I use at work and at home:

Perl.
shell (various, mostly in sh/bash/zsh).

And others (at work) do their thing in:
PHP
Java
C
ksh

themusicwave
August 8th, 2006, 04:01 PM
Is Java an interpreted language?

Ray


Actually, it's technically what's called a hybrid language. Meaning that it is compiled to an intermediate language which is then interpreted. This is all according to my Fundamentals of Programming Languages course from a few years back.

The difference is that an interpretted language has no intermediate language. It is simply interpretted as is.

In the case of Java, the Java code is compiled to Java Bytecode which is interpreted by the Java Virtual Machine.

I beleive C# works is also a hybrid.

David Marrs
August 9th, 2006, 01:57 PM
I think any and all languages are useful depending on what area of the industry you are in. I'm in web application, so it's all about php, although many small to medium-sized businesses are embracing .NET (they like down-time, aparently).

I think it's more important that you know object oriented programming (at least, it was for me) and show that you can apply your skills across many different languages and move with the times. And have a good portfolio of code, of course. A developer who got hired where I work recently didn't know any php before he started but he was a good programmer with transferable skills. He picked the language up in very little time.

Eric_T
August 9th, 2006, 02:40 PM
Ok, I have to reply since nobody's mentioned Fortran..:)
I use Fortran almost exclusively in my work, which is basically research involving computational fluid dynamics.
In addition, a scripting language is useful to know, to edit input/output files and for other minor tasks that show up. My weapon of choice for this is either just simple bash or ruby, a lot of the older guys use perl.

LordHunter317
August 9th, 2006, 03:49 PM
Actually, it's technically what's called a hybrid language. Meaning that it is compiled to an intermediate language which is then interpreted.The line between compiled and interpreted languages is rather blurry. We call Java and .NET languages compiled because that's nominally what they are (all .NET languages produce the same bytecode). The fact they're not compiled to native machine language doesn't fact into that.

But, languages that are almost always seen compiled (to machine code) can be interpreted, like C, and languages that are almost always seen interpreted can be compiled, like Perl and Python.


The difference is that an interpretted language has no intermediate language. It is simply interpretted as is.Actually, that's rarely the case. Python is converted to bytecode internally. Perl6 on Parrot will be.

Interpreted generally means that the language runtime reads the source code directly, instead of some intermediate form.

However, even that doesn't always hold. JSP and ASP.NET pages are typically read and then translated into Java / some .NET language and then compiled, but we don't call that proccess interpretation. I suspect that's because we're actually calling the language compiler in the process, and the step before it is also a compiler step.


Formally, a compiler is any tool that translates one (computer) language to another. So all interpreted language runtimes are compilers, for example.

melkor12
August 10th, 2006, 09:17 AM
I have worked at Siemens's software development center for about a month and they all used Microsoft .NET products. There were lots of VB, C#(which is a great language no matter what the anti-Microsoft guys say) and MFC.

RoccoD
August 10th, 2006, 12:22 PM
I work 10 years for Philips as an embedded software designer. Most used languages (in order of usage):

1 - C
2 - C++ (used as glorified C, no exception handling, templates and rtti in embedded stuff).
3 - Java
4 - Assembly (MIPS/ARM)
5 - Python

adssse
August 11th, 2006, 12:18 AM
I work for an insurance company developing software and all I use is COBOL. There are various other languages in use including mainly JAVA as the front end to the COBOL. I had never used COBOL before (used C/C++, JAVA, VB, Perl etc. in school), but thats what I was hired in to do.

junglepeanut
August 11th, 2006, 10:49 AM
Fortran