What Programming Language do you used?

I got in to Java programming a long time after C/C++, I have to admit, it still feels at time as though I trying to program whilst wearing a straight-jacket when coding up some Java.

As opposed to all the rope that C++ gives you to hang yourself with? ;)

Java has a lot of warts for sure, however one thing it is quite good for is getting work done. It's standard libraries are fairly good in that you don't need to re-invent everything, which seems to be the mindset in C++.

That may not be true for everyone of course, but I am interviewing people at the moment, and you can sure tell who are C++ guys. It's quite an interesting difference actually! Your main language definitely shapes how you think.

---------- Post added at 21:19 ---------- Previous post was at 21:10 ----------

If there were more hours in the day, I'd take up SCALA and Erlang too.

Scala is definitely my current favourite language. I heartily recommend it!
 
I'll try not to jump too hard into the C++ vs Java

But both have their uses and merits as I see it. Java lets you focus on functionality without worring too much about pointers and ram that becomes lost to you.

Sure you can hang yourself with java too, but it's harder.

With C++ you can do some elegant tricks that'll baffle ppl who read your code (they won't understand it, and can't maintain it if they have to...) and you can get some kick ass performance. But then, if you really need this, I prefere C over C++

Now, what you really need for speed and elegance are the constructs and constraints of functional language like Erlang.... Seems very aluring for ppl who've shot themself in the foot in high concurancy high volume systems...
 
I'd rather accidentally hang myself with a rope than be bound and gagged by someone else with it. And C++ doesn't require you to reinvent things, there's about six million perfectly suitable libraries out there for a broad range of tasks, in flavors as light- or heavy-weight as you please. You just have to actually pick them, instead of being stuck with Java's "one size fits an imaginary composite of 'all'" approach.
 
@commodorejohn

The same goes with java.

And for a webserver application, say a bank system. I'd do it in java any day over C++

If I was doing a word processor, I'd do it in C++ any day over Java and it's jar hell when distributing the application.

And just for the record, I'd never use an java applet for logon, I'd do SAML2 for authentication. And I'd think long and hard about how to do end-user singning of transaction without using flash or an applet... If you can think of a way to sign an electronic document using HTML5 or something similar, tell me! :D We'd be rich on your idea :P
 
I got in to Java programming a long time after C/C++, I have to admit, it still feels at time as though I trying to program whilst wearing a straight-jacket when coding up some Java.

As opposed to all the rope that C++ gives you to hang yourself with? ;)

Java has a lot of warts for sure, however one thing it is quite good for is getting work done. It's standard libraries are fairly good in that you don't need to re-invent everything, which seems to be the mindset in C++.

That may not be true for everyone of course, but I am interviewing people at the moment, and you can sure tell who are C++ guys. It's quite an interesting difference actually! Your main language definitely shapes how you think.




I'd love to hear more about how your first language shapes you :unsure: Since I'm embarking on this journey i find this very interesting indeed.
 
I'd love to hear more about how your first language shapes you :unsure: Since I'm embarking on this journey i find this very interesting indeed.

I'm sure it does, but I didn't say first, I said main. I think very differently about programming now I am using more functional languages, and that has only really been the last 3 years or so.

I don't think it matters too much what your first language is. But once your comfortable with it, you should then try to learn another language of a different paradigm (object orientated, functional, etc.).

---------- Post added at 22:08 ---------- Previous post was at 21:57 ----------

I'd rather accidentally hang myself with a rope than be bound and gagged by someone else with it. And C++ doesn't require you to reinvent things, there's about six million perfectly suitable libraries out there for a broad range of tasks, in flavors as light- or heavy-weight as you please. You just have to actually pick them, instead of being stuck with Java's "one size fits an imaginary composite of 'all'" approach.

I was talking about the standard library. The normal complaint about Java libraries is that there are too many, too much choice. I heard boost is good though.

I'm not really sure what you mean about being gagged in Java. Certainly there is a lot less you need to worry about, and that does mean there are certain restrictions that means Java is less suitable for things like embedded development. However, I personally would take any language that let me concentrate more on solving a problem rather than satisfying a compiler.

It probably comes down very much on what you are used to though.
 
I'd love to hear more about how your first language shapes you :unsure: Since I'm embarking on this journey i find this very interesting indeed.

I'm sure it does, but I didn't say first, I said main. I think very differently about programming now I am using more functional languages, and that has only really been the last 3 years or so.

I don't think it matters too much what your first language is. But once your comfortable with it, you should then try to learn another language of a different paradigm (object orientated, functional, etc.).



Hmm Thanks for elaborating :)

Although the main language may shape a person, I think it would be the person and his or her personality and tastes that drives them to choose that as their main language so its realy just a natural progession. (Unless your main language is chosen by your work, which is likely the case for a lot of people :()
 
I fell in love with C/C++ way before I really worked with it.... espcially C, I was progamming in that when I was about 16 on the A1200, with my handy copy of Dice and Lattice C!

Ahhhh good *heady* days......


while one can fall foul into a trap or thinking process, I take it upon myself to find a new language or an old one I haven't used in a while and pick it up again... this leads to a better way of thinking of solutions to problems, as opposed to any direct coding - although some of the coding limitations also lead to better solutions to complex problems.

Given a choice I will choose C, simply because I love how explcit one can be in it... sometimes its more like writing poety than it is code.... Java is .... OK... I have achived quite a level of competence, however its just a prototyping - proof of concept - language for me most of the time. Java's real strength comes from its Downloadable Applets - whereby I can write a UI or program that the user controlls via the applet - from any machine..

So it has its major plus-points over some of the other languages, and the free swing tool-box for Java UI (under netbeans *you will likely be using that AmiSonicNeo) is pretty good - and as competent as Visual Studio's IMHO for 90% of tasks.
 
I learned some Java at Uni, but Comp Sci was not for me and I changed courses.

However I do remember some of the principles of Object orientated programming to this day :thumbsup:

I can reel out a few lines of BASIC from time to time!

Print "Hello" FTW
 
Ah! The old days..... just a few ones....

Assembler (and nearest): 6502, Z80, 68000, 286, 386

Various Basics, Fortran, Pascal, Delphi, C/C++ ..... Also DBase II & III, DML, SQL,....

But stopped years a go :( Maybe one day my Programming Fury comes back...... :D
 
In my case:

BASIC, 6502, Z80, ARM, 68000, C/C++, Objective-C, Java, Pascal, python.
(and Amiga copper if that counts as a language :))

most of those I've used in my spare time, C and python I use for work (C to write it, python to make sure it works), and I was forced to learn Pascal and Java in college/uni. Objective-C is technically 'just enough to pass the buck to C++ and get me back into my comfort zone'

Oddly the most recently learned of those are 68k and the copper - If time permits I'm looking to write a little Amiga game sometime, so I might need to go looking for bits around here when the time comes...
 
Yup, as you said Zeets, we're using netbeans :D lol
 
C# at present with XNA. Hoping to avoid using Java when I get around to Android.:dry: Java is what's causing me to drag my heels.

Once I get my retro stuff up and running again it'll be 6502, PL65, 68000 and maybe a bit of STOS.
 
C# and XAML at the moment. Used to program with Java and Visual Basic about nine years ago. I've tried C and C++ but those pointers just seem to get over my head. I really should install Eclipse or Netbeans and see how Java looks like after nine years.
 
Pointers are one of those things where they seem arcane and mystifying until you push on through and break through to understanding them, then they make perfect sense and you can't understand how you were ever confused by them ;D
 
Not as many languages as some but Ive been on C / C++ for over 16 years now :thumbsup: By far the most adaptable language I've ever used. Gives you everything you could possibly want from easy / simple structure to inline assembly.

ZX Spectrum 48k basic
C64 Basic
Amiga Basic
AMOS and Pro
Cobol
Turbo Pascal 5.5
HTML / Java script (does not count)
C
C++

With tiny bits of z80 and x86 asm.

I remember first seeing pointers to pointers in C and it frying my brain.
That was a long time ago now thou :D
 
Last edited:
Pointers are one of those things where they seem arcane and mystifying until you push on through and break through to understanding them, then they make perfect sense and you can't understand how you were ever confused by them ;D

I'd say pointers confuse people, because they are described by other people as 'difficult to understand', but they're as simple to understand as a variable. Should I explain them? They are like variables, but instead of holding data, they hold the address of a byte in memory where the data is stored. Data is stored sequentially in memory, so if you add 1 to the pointer's value, then it will now point to the next byte in memory. Add 10 to it and it will point to the byte that's 10 bytes along from where it was. This is great if you have organised your memory, because by iterating through memory this way is fast (adding/substracting 1 to a value is faster than adding a higher number). images and sound are two areas where a mastery of pointers can dramatically increase performance. Furthermore, understanding how your Amiga organises its memory helps you understand the Amiga better as a computer. In doing so, you will code more maturely and have a better feeling of control.

Kind regards,
Nick

PS. I'm programming in Java at work right now due to Android, but I like 680x0 assembly, vb.net and c/c++ based languages are alright. My favourite combination is mainly c with bits assembly for the engine and c++ for objects, not that I've done too much of either. Unfortunately, my job dictates the languages I most use
 
Furthermore, understanding how your Amiga organises its memory helps you understand the Amiga better as a computer. In doing so, you will code more maturely and have a better feeling of control.
Quite so. And yeah, they're not that difficult to explain (although there are a baffling number of textbooks that manage to botch it anyway, usually by trying to pretend that a pointer is a mystic link via ley lines to the location of a variable instead of a number that indicates a location in - ewww - physical memory, 'cause Lord knows a comp sci textbook can't ever acknowledge that computers aren't magic,) but a lot of people seem to have trouble really grokking them at first.
 
Back
Top Bottom