|
Not easy to learn IMO. Though may be easier for a beginner than experienced procedural or OO devs.
Kevin
|
|
|
|
|
Web? Javascript and probably node on the backend. Yes JS sucks; but it's also unavoidable in the web world and only having to learn a single language would probably make it easier.
Android Apps? Java. The native language is a much better choice than any of the various polyglot tools because 99.9% of the documentation is in it.
iOS Apps? Swift. Again go with the native form; and Objective C is both eye searingly ugly and too complicated to be a good first language.
General programming on a PC? C#. Both for the quality of the tooling available (VS > all); and because it's what I know best and would be able to teach easiest.
General Penguinland programming? Probably Python. I've expressed my distaste for syntactic whitespace quite vocally before; but it's supposed to be easy to learn and ubiquitous; for a starter both are important.
Game mod programming? Whatever the game of interest uses for it's mod language. I hope I don't need to explain this in any more detail.
Did you ever see history portrayed as an old man with a wise brow and pulseless heart, waging all things in the balance of reason?
Is not rather the genius of history like an eternal, imploring maiden, full of fire, with a burning heart and flaming soul, humanly warm and humanly beautiful?
--Zachris Topelius
Training a telescope on one’s own belly button will only reveal lint. You like that? You go right on staring at it. I prefer looking at galaxies.
-- Sarah Hoyt
|
|
|
|
|
because I wanted to be on the winning team.
Really though, it would highly depend on why that person wanted to learn programming in the first place. You wouldn't recommend javascript for someone who wants to get into desktop applications. Likewise you wouldn't recommend VB for someone who doesn't have a learning disability.
|
|
|
|
|
musefan wrote: Really though, it would highly depend on why that person wanted to learn programming in the first place. You wouldn't recommend javascript for someone who wants to get into desktop applications.
I agree with that. But I would start with something high-level in any case, so as to get them productive as soon as possible. Then, as a second language, go for C, C++ or whatever depending on their goals.
Looking at the results of this survey so far it seems the answers reflect what most CP-ers happen to be using right now, rather than what should be a first language.
Kevin
|
|
|
|
|
Lisp or Forth
just because
|
|
|
|
|
Forth?
Many people don't know the power of Forth. They are so indoctrinated into the C, C++, Java, HTML type of crap!
|
|
|
|
|
Forth is a great first language
|
|
|
|
|
Processing or Euphoria could do. But the development environment is more important. IDE's have become very complex. Interpreters would also be better than compilers. It's about looking for simplicity in the right places so that the focus can be placed on learning the basics.
Granted, I'm thinking of preadolescents. Once they hit puberty, they can hit the ground running if sufficiently motivated.
|
|
|
|
|
Once they hit puberty, they will start chasing girls!
|
|
|
|
|
...because it makes it easy to do it properly, and teaches all the basic concepts. It forces you to think about what you are doing - if you don't learn about var and dynamic too early anyway - without penalising you by assuming it knows what you want.
And let's be honest, you can learn the whole of C# in a week, even if you are a slow student on your first language. It's the framework behind it that takes the time!
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Well said.
OriginalGriff wrote: you can learn the whole of C# in a week
Don't know if I agree with you completely here, but I see the point you are trying to make.
|
|
|
|
|
An experienced developer with OOPs experience can pick up the whole of C# in an afternoon! (It's a very simple language - the only complications are lambdas and so forth.)
Becoming competent in using C# means learning the framework behind it in order to do anything substantial, and that takes time. Lots of time.
But I'd expect a developer with good .NET experience (for VB or C++ etc) to be fully operational in well under a day.
Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
|
|
|
|
|
Read the question/title of the pole, it negates your response. That was my point. (Beginner/First Language) not experience developer.
Also, I don't know how many software shops you have worked in, but you are way off with your expectations. Just saying...
BTW,I upvoted you because I too, feel C# is the better language to learn for a beginner.
|
|
|
|
|
I think, I am a experienced developer - I can read C#-Code but I have problems in creating code like I can do it in VB.
And to learn C# in one day - I don't believe - even not in one week ...
But I agree with you (all) - in the moment C# would be the best language do learn. But if I remember back there where many programming languages "state of the time". Who knows what the future will bring ...
|
|
|
|
|
|
OriginalGriff wrote: And let's be honest, you can learn the whole of C# in a week, even if you are a slow student on your first language.
That is true of most languages.
If you have an important point to make, don't try to be subtle or clever. Use a pile driver. Hit the point once. Then come back and hit it again. Then hit it a third time - a tremendous whack.
--Winston Churchill
|
|
|
|
|
IMHO, the easiest one to learn. Widely used too.
|
|
|
|
|
I can't imagine someone falling in love with programming in C.
I'd say, give them something they can fall in love with to start with.
Something like java, C# or C++ (for the clever kids).
So give them two languages... C and one the those mentioned above.
"Program testing can be used to show the presence of bugs, but never to show their absence."
<< please vote!! >></div>
|
|
|
|
|
R. Erasmus wrote: I can't imagine someone falling in love with programming in C. Why not. I did.
"The difference between genius and stupidity is that genius has its limits." - Albert Einstein | "As far as we know, our computer has never had an undetected error." - Weisert | "If you are searching for perfection in others, then you seek disappointment. If you are seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010 |
|
|
|
|
|
It lacks flair/style/panache. (Only my personal opinion --> I might add that I'm a full time C developer)
"Program testing can be used to show the presence of bugs, but never to show their absence."
<< please vote!! >></div>
modified 14-Jul-15 4:54am.
|
|
|
|
|
C shows the easiest and hardest part of programming. If you survive and you enjoyed it... then you may have future as developer.
|
|
|
|
|
blfuentes wrote: If you survive and you enjoyed it... then you may have future as developer.
I never took C and I am a successful software engineer. I don't buy into the C/C++ requirements anymore. IMHO, they are no longer relevant, as prerequisites alone, to becoming a solid coder.
|
|
|
|
|
It was just a "joke". Obviously, nowadays there is no need to choose one specific language to start with. In any case, C++ is still one of the best paid programming languages and if you start with it and you like what you learn, you may have many doors open.
|
|
|
|
|
Auric Goldfinger wrote: I never took C and I am a successful software engineer. I don't buy into the C/C++ requirements anymore.
Some of it is snobbery. It all depends what you intend to do with your coding. Being a good coder has a lot to do with attitude, more so than language choice.
Kevin
|
|
|
|
|
Kevin McFarlane wrote: Being a good coder has a lot to do with attitude, more so than language choice.
|
|
|
|