Which programming language to learn
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
HTML isn't a programming language; it's a page formatting standard based on SGML but extended somewhat over the years. PERL and Python are scripting languages, and the line between them a programming languages is a bit fuzzy. C++ will always, IMHO, be a necessary evil, as it is an extremely powerful language that is rather useful for writing other languages, not to mention operating systems. VB.Net is a sop to VB programmers to keep them buying Microsoft development tools, and it's very handy for doing small tasks badly. C#.Net is a quite usable language which offers the syntactical simplicity of VB.Net while retaining much of the power of C++, with the advantage of being much easier to learn than C++. F# is a totally new direction in programming, and well worth a look, but career opportunities are probably somewhat limited if that's the only language you know. That being said, most, if not all, of the languages I've mastered are long obsolete, but I got paid well for knowing them. How much is NOTDB, and salary requests are not generally well received here.
Will Rogers never met me.
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
Hi, I think such a broad question is a little bit like asking "what kind of car should I buy ?" But, please don't think I am making "fun" of you by saying that; I take your question seriously. What would be helpful would be for you to add some information on what you'd like to be doing in the future: do you want write games; do you intend to become a formally trained "computer scientist;" or, to be a creator of good-looking, efficient, web-sites that use server-side back-ends, connected to databases, for e-commerce ? Do you see yourself developing software for a particular OS: Apple, Windows, Android, Linux ? Do you see yourself wanting to develop software for a particular smaller form-factor (smart-phones, tablets, phablets, the new Surface from MS)device ? Or software that is "responsive," that could potentially run on all of the above devices, plus desktops: useful, and looking good: no matter what screen-size the end-user has at hand ? So, imho, a lot depends on your goals, and their time-frame. Do you have several years, the intelligence, and the mean$, to become a highly-trained computer scientist ? Do you have a goal of having a product in the "marketplace" within six months ... a year ... or ? We are, now, at kind of a unique nexus, I believe, in software development, where the scripting language misnamed JavaScript (it never had any connection with Java) has become, thanks to "Prince" jQuery, and other extension libraries, a kind of "Cinderella gone to the ball," even embraced by Microsoft. ... edit ... If you "buy" the hypothesis that we are now at some kind of "nexus" of change in software development, and one of your decision factors is making relatively more money in the future ... then you might also consider that today's statistics (from whatever sources) about numbers of jobs, types of programming skills required, and salaries, may well be not reliable as predictors for the future ? ... end edit ... A lot of programmers are shifting towards a combination of HTML5 + CSS3 + JavaScript as a solution to creating software that can run on many OS's and devices. But, this "solution" is still not fully fleshed-out (some complex issues there involving standards bodies, etc.). imho, these technologies are in a state of rapid ferment, and change. Personally, I consider C# to be the best possible language to program in, and it would be my choice if I were ever (saints forbid) to teach computer science again. I think C# offers a clear path to understanding OOP (object
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
C# first and then languages on the web such as HTML and ASP.NET
-
HTML isn't a programming language; it's a page formatting standard based on SGML but extended somewhat over the years. PERL and Python are scripting languages, and the line between them a programming languages is a bit fuzzy. C++ will always, IMHO, be a necessary evil, as it is an extremely powerful language that is rather useful for writing other languages, not to mention operating systems. VB.Net is a sop to VB programmers to keep them buying Microsoft development tools, and it's very handy for doing small tasks badly. C#.Net is a quite usable language which offers the syntactical simplicity of VB.Net while retaining much of the power of C++, with the advantage of being much easier to learn than C++. F# is a totally new direction in programming, and well worth a look, but career opportunities are probably somewhat limited if that's the only language you know. That being said, most, if not all, of the languages I've mastered are long obsolete, but I got paid well for knowing them. How much is NOTDB, and salary requests are not generally well received here.
Will Rogers never met me.
Roger Wright wrote:
C++ will always, IMHO, be a necessary evil
Roger Wright wrote:
C#.Net is a quite usable language which offers the syntactical simplicity of VB.Net while retaining much of the power of C++, with the advantage of being much easier to learn than C++.
Why is everybody so scared of pointers? Memory addresses and how to calculate them are the most fundamental things on a computer. It's not that the math is really hard. Just a little (integer) addition or multiplication. And the concept of 'borrowing' the memory from the OS and later returning it, like a book from a library, is also no rocket science. I have written it someplace before: My C++ destructors look very similar to what I do in C#'s finalizers and in Dispose().
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
Which I learned first? None of them. I started with writing machine code programs. While you probably will have a hard time getting a job with that today, I still think that everybody should start there. It's a great way to learn the most fundamental concepts. No matter what language you are interested in, it always ends up with the processor executing machine code. Learning and understanding any language is not hard anymore, once you know what your processor is actually doing.
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
Dont think of language and money in the same breath . Treat your first language as an introduction to the subject to get a grasp of the fundementals and then after that decide what area you want to work in ( web , enterprise , real time , mobile etc ) and then pick the language based on that .
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
Depending on what you want to do and what do you need the answer will differ... Give us more details...
[www.tamautomation.com] Robots, CNC and PLC machines for grinding and polishing.
-
Roger Wright wrote:
C++ will always, IMHO, be a necessary evil
Roger Wright wrote:
C#.Net is a quite usable language which offers the syntactical simplicity of VB.Net while retaining much of the power of C++, with the advantage of being much easier to learn than C++.
Why is everybody so scared of pointers? Memory addresses and how to calculate them are the most fundamental things on a computer. It's not that the math is really hard. Just a little (integer) addition or multiplication. And the concept of 'borrowing' the memory from the OS and later returning it, like a book from a library, is also no rocket science. I have written it someplace before: My C++ destructors look very similar to what I do in C#'s finalizers and in Dispose().
CDP1802 wrote:
Memory addresses and how to calculate them are the most fundamental things on a computer.
Yes, but not many people understand the fundamentals any more. Far too many think programming is a question of dragging some tools onto a page, double clicking to generate event handlers, and asking CodeProject for the rest.
One of these days I'm going to think of a really clever signature.
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
All languages are pretty much the same (although HTML isn't a language). Learn one, get a job doing it, and the rest will come along as your career develops. Over the last 31 years, I've done the following for money, and learned each one when I needed to learn it: Fortran Cobol CMS-2Y Assembly Pascal Delphi (which is a fancy name for Pascal) Modula-2 dBase2 SQL (Oracle and SQL Server) Ada C C++ C# VB VB.Net PHP HTML It's difficult to specialize AND stay employed. Usually, you can do one or the other, but not both.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997 -
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
coveredInTheBlood1 wrote:
and salary list please
There ain't such a thing. Salaries vary depending on location and experience. Finding a COBOL-programmer is hard nowadays, and as such, they're expensive. Doesn't make it a good career-move, COBOL is hardly used in general business. If you want to get rich, find a different track.
Bastard Programmer from Hell :suss: if you can't read my code, try converting it here[^]
-
CDP1802 wrote:
Memory addresses and how to calculate them are the most fundamental things on a computer.
Yes, but not many people understand the fundamentals any more. Far too many think programming is a question of dragging some tools onto a page, double clicking to generate event handlers, and asking CodeProject for the rest.
One of these days I'm going to think of a really clever signature.
Yes, at least some of them are proud that they still can get something done with a simple text editor and some kind of makefile. :) I love the looks on their faces when I suggest that they throw away the text editor and the compiler away as well and then use a hex editor to write that what would be the compiler's output to a file directly.
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
It might be easier you to tell us your salary requirements and we can suggest a language?
VS2010/Atmel Studio 6.0 ToDo Manager Extension
Version 3.0 now available. There is no place like 127.0.0.1 -
Roger Wright wrote:
C++ will always, IMHO, be a necessary evil
Roger Wright wrote:
C#.Net is a quite usable language which offers the syntactical simplicity of VB.Net while retaining much of the power of C++, with the advantage of being much easier to learn than C++.
Why is everybody so scared of pointers? Memory addresses and how to calculate them are the most fundamental things on a computer. It's not that the math is really hard. Just a little (integer) addition or multiplication. And the concept of 'borrowing' the memory from the OS and later returning it, like a book from a library, is also no rocket science. I have written it someplace before: My C++ destructors look very similar to what I do in C#'s finalizers and in Dispose().
I've never been scared of pointers - I started out programming in machine language and assembly. But the notation sucks, and the libraries that were available when I was using it were almost as tedious as writing one's own from scratch (MFC, for instance). I suspect that things are better now, but I'm not interested in looking. :)
Will Rogers never met me.
-
CDP1802 wrote:
Memory addresses and how to calculate them are the most fundamental things on a computer.
Yes, but not many people understand the fundamentals any more. Far too many think programming is a question of dragging some tools onto a page, double clicking to generate event handlers, and asking CodeProject for the rest.
One of these days I'm going to think of a really clever signature.
Well said, Richard! :-D
Will Rogers never met me.
-
Well said, Richard! :-D
Will Rogers never met me.
-
I've never been scared of pointers - I started out programming in machine language and assembly. But the notation sucks, and the libraries that were available when I was using it were almost as tedious as writing one's own from scratch (MFC, for instance). I suspect that things are better now, but I'm not interested in looking. :)
Will Rogers never met me.
No, things have not gotten much better. Since the arrival of .Net native C++ has been treated like a stepchild in Visual Studio. On the good side, I can dig out ancient code and get it to work again. So, your concern is not with the language itself, but with the lack of a decent IDE support and a modern library of a similar caliber as the .Net framework?
-
No, things have not gotten much better. Since the arrival of .Net native C++ has been treated like a stepchild in Visual Studio. On the good side, I can dig out ancient code and get it to work again. So, your concern is not with the language itself, but with the lack of a decent IDE support and a modern library of a similar caliber as the .Net framework?
Well, those, plus the fact that the notation is unnecessarily cryptic. When I started out, it was during the time that people realized that maintenance cost more than development, primarily because of unstructured programming, and language syntax that was difficult to read and understand. Languages evolved as a result into ever more readable forms, until C++. That was a giant step backward. It helped with the structure problem, but destroyed any hope of humans being able to read it. Added to that - and for me it was a matter of timing, I guess - was the shift from procedural programming to event-driven programming, popularized by Windows. C++ by itself was a challenge, but not insurmountable. Add Windows, and message pumps and handlers and all the crap that comes with it; it was too much for me to assimilate. C# came along, and saved my butt, at least for the small amount of programming I still do. Fortunately, I don't expect ever again to have to program for a living, though I like to take on an app now and then just to keep my fingers nimble. One never knows where the next job will be, nor what skills it might require. :-D
Will Rogers never met me.
-
Well, those, plus the fact that the notation is unnecessarily cryptic. When I started out, it was during the time that people realized that maintenance cost more than development, primarily because of unstructured programming, and language syntax that was difficult to read and understand. Languages evolved as a result into ever more readable forms, until C++. That was a giant step backward. It helped with the structure problem, but destroyed any hope of humans being able to read it. Added to that - and for me it was a matter of timing, I guess - was the shift from procedural programming to event-driven programming, popularized by Windows. C++ by itself was a challenge, but not insurmountable. Add Windows, and message pumps and handlers and all the crap that comes with it; it was too much for me to assimilate. C# came along, and saved my butt, at least for the small amount of programming I still do. Fortunately, I don't expect ever again to have to program for a living, though I like to take on an app now and then just to keep my fingers nimble. One never knows where the next job will be, nor what skills it might require. :-D
Will Rogers never met me.
This must have been one of the first programs I entered into my old computers to see if I had not fried anything while soldering it together:
0000 7B
0001 3F 00
0003 7A
0004 30 01This is just a simple 'Hello World' type of program. It just turns on a LED and turms it off when you press the input key next to the hex keyboard. Barely enough to show that CPU, memory and I/O are alive and well so far. You know what I like so much about it? It's, besides having been formatted by instructions, absolutely free of style or syntax. Just instruction codes, followed by one or two bytes of data if needed. No other representation (besides assembly code perhaps) can give you a more precise or shorter description of what your code does. There is no potential for misunderstanding or any hidden side effect. Every instruction alters the CPU's state in a precisely defined way. The hexadecimal notation does not disturb me one bit. They have become as readable to me as any other language.
-
Which is in opinion best to start learn from you? HTML? C++? PERL? C++/VB/C#/F#/PYTHON .NET? Any others and why? Have you learned first which one and salary list please Thanks
C for the simple reason that it teaches you best how computers work without getting bogged down in the details of assembly language (a language which I love.) From there, from a purely pragmatic perspective, learn either Java or .NET; yeah, learn both, but become an expert in one or the other. One way is to decide whether you really like Windows and Visual Studio or prefer Linux/UNIX. (Right now, Java is hotter due to Android, but that demand will slip in time.) Python, Perl, HTML may help you at some jobs, but they will be ancillary to Java or .NET. Oh, and learn SQL really well. NOTE: This is coming from a die-hard C/C++ developer who has a profound disinterest in the types of projects using Java and heavy .NET. The result is rather difficult job searches; many employers are looking for jacks of all trades and I'm not that, nor interested in being one. The point is that until I landed my latest job, I fielded calls for all sorts of positions and got a pretty good feel for the market.
-
All languages are pretty much the same (although HTML isn't a language). Learn one, get a job doing it, and the rest will come along as your career develops. Over the last 31 years, I've done the following for money, and learned each one when I needed to learn it: Fortran Cobol CMS-2Y Assembly Pascal Delphi (which is a fancy name for Pascal) Modula-2 dBase2 SQL (Oracle and SQL Server) Ada C C++ C# VB VB.Net PHP HTML It's difficult to specialize AND stay employed. Usually, you can do one or the other, but not both.
".45 ACP - because shooting twice is just silly" - JSOP, 2010
-----
You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
-----
"Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass." - Dale Earnhardt, 1997John Simmons / outlaw programmer wrote:
...HTML isn't a language...
Ah well of course it is. HTML is an acronym and the "L" in "HTML" stands for "Language". The full string is Hypertext Markup Language, so of course it is not a programming language but it is a language. XML (unembellished) is also similarly afflicted. I would argue that XSL, based on XML, is a programming language. It has constructs for accumulators, loops, while, switch, if (and other conditionals), variables etc. which I think qualifies it so. HTML makes provision for including ECMAScript/Javascript which is a language, but (similar to XML including XSL) the HTML itself is not the programming part.
-- Harvey