since VB is a dead end.

If you choose Visual Basic, I would suggest VB.NET, since VB is a dead end. I believe the IDE is not supported anymore, and has issues on Windows Vista and later (it was never supported on versions later than XP/2003). The runtime (ie. for finished programs) is supported up to Windows 7, but as far as I know not on future versions. VB.NET is basically C# with a different syntax.
Python is also fairly popular and well suited for beginners, as opposed to C++ or C#.
@sacherjj, I have also read that Python is the language of choice for many developers nowdays, what development tools could I use for Python? Is there an all in one IDE? or is it more text editor and command line compiling?
I am aware thought that if I choose C# or VB that its a microsoft thing and I am essentially learning somthing windows only.
Java would seem to fit the bill as it seems similar to C# but is cross platform?
I'm still looking for something that's as quick and easy to use as VB, but based on C, as it's a PITA to be continually switching between C on the MCU and Basic on the PC.
The things I particularly don't like about VB are :
It sucks at unsigned maths (try doing a 32 bit checksum - nightmare!)
It needs DLLs so you need to generate an install package, and the one that comes with VB is a bit crap.
It is no longer possible to legitimately buy it, which can be a problem if I want to give code to a customer.
No Undo on GUI changes.
I also dislike .NET due to the massive install needed if it's not already on the PC.
Would be interested to see any suggestions....
I also dislike .NET due to the massive install needed if it's not already on the PC..NET 4.0 is only 54 MB download for the libraries. Not idea, but not "massive" but current software standards. Anyone running Windows update already has it installed, most likely.
Obviously I need to learn a PC language but there are so many to choose from!
So I'm hoping some of you more experienced engineers can give me some advice on which to pick.
The recommendation to not care about the language, but pick an IDE is absolutely rubbish. Unless you want to become a "programmer" who can't tell his arse from his head and starts to panic if he needs to use something else than the only IDE running on the only platform and OS he uses since the last 10 years. A disgusting lot of programmers I may add, because they typically claim they know the one true way to do things. Avoid becoming that hero code monkey type of programmer.
nvm Psi, that advice was meant for professional. you can learn all the languages (and layers of onion) if you like all years long.All i said was that the IDE is more important.
I'm a big fan of Python, as it is very fast to implement code in, and has vast libraries for doing different things. GUI is a little harder than Delphi or MS Visual Studio or the like.
What you get is cross platform for free, if you use a supported library. That may or may not be useful, depending on application.
Best bet is probably free version of Visual Studio and C#.NET. That seems to be the norm for windows any more.
My ultimate aim is to be able to cobble together some PC software with gui that can send commands to or recieve
data from the microcontroller via either rs232 or usb.
Obviously I need to learn a PC language but there are so many to choose from!
So I'm hoping some of you more experienced engineers can give me some advice on which to pick.
Don't pick. Learn all the common ones. No, this is not a joke. You want to become a professional, and valuable professionals aren't monolingual. They find their way in all the common languages. And it doesn't matter if you like them or not.
After you have done the common ones (and no, Python is not a common one, just a fanboy one), you can still look into the hype stuff and fag of the month.
And learn the platform/OS. A programming language is useless if you can't efficiently make use of the platform/operating system. And just like with programming languages, learn more than one platform if you want to become a professional.
The recommendation to not care about the language, but pick an IDE is absolutely rubbish. Unless you want to become a "programmer" who can't tell his arse from his head and starts to panic if he needs to use something else than the only IDE running on the only platform and OS he uses since the last 10 years. A disgusting lot of programmers I may add, because they typically claim they know the one true way to do things. Avoid becoming that hero code monkey type of programmer.
Don't pick. Learn all the common ones.
(and no, Python is not a common one, just a fanboy one)
Don't pick. Learn all the common ones. No, this is not a joke. You want to become a professional, and valuable professionals aren't monolingual. They find their way in all the common languages. And it doesn't matter if you like them or not.
After you have done the common ones (and no, Python is not a common one, just a fanboy one), you can still look into the hype stuff and fag of the month.
And learn the platform/OS. A programming language is useless if you can't efficiently make use of the platform/operating system. And just like with programming languages, learn more than one platform if you want to become a professional.
The recommendation to not care about the language, but pick an IDE is absolutely rubbish. Unless you want to become a "programmer" who can't tell his arse from his head and starts to panic if he needs to use something else than the only IDE running on the only platform and OS he uses since the last 10 years. A disgusting lot of programmers I may add, because they typically claim they know the one true way to do things. Avoid becoming that hero code monkey type of programmer.
Obviously I need to learn a PC language but there are so many to choose from!
So I'm hoping some of you more experienced engineers can give me some advice on which to pick.
After you have done the common ones (and no, Python is not a common one, just a fanboy one), you can still look into the hype stuff and fag of the month.