What language should I start with? [closed]

Closed. It is impossible to give an objective answer to this question . Answers to it are not accepted at the moment. Closed 5 years ago. Blocked. This question and the answers to it are blocked, as it does not correspond to the topic of the site, but has historical significance. It is not allowed to publish responses or perform other actions.

Good day, since I am a schoolboy and I have a vacation, I wanted to do something, I have long wanted to start learning some programming language (there are friends who independently learned programming languages at home and by the time they entered the institute knew the program for a couple of courses ahead), first it's easier, and then, if you like, go to different C++ , therefore, I have one question: which language is best to start with? So that it is not hopelessly outdated and useless, but it is not too difficult to learn. I would like to hear your answers to this question, as I hope that many of you know what is best for a newbie. Some talk about basic, others about paskal or python. But where do I start? And where on the Internet can I get good self-help books? I will be grateful for useful answers!

Author: Nicolas Chabanovsky, 2013-07-02

14 answers

I will express a seditious thought. It doesn't really matter which language to start with. It is important that with algorithmic (for there are non-algorithmic languages).

I personally started with Quasic - this is a version of Basic for industrial machines.

Anticipating a certain bathert of colleagues in the shop, I hasten to indicate the position: the main thing at the initial stage is to like, to get into the taste. To program the hands of an analog watch with arrows to look at your creation, to admire it. The key word is to admire. If you admire it, it means "warm" and you can move on and learn another language.

Then, alas, the cruel prose begins - the laws of the market are inexorable. You need to know one of the 3 basic languages with a bang: C / C++ or C# or Java. Plus, you need to pull up something scripting: a la Python, JavaScript, Perl.

Further more: to become a so-called fullstack developer - you will need to know SQL, database design, it would be nice to add assembler, absolutely must have XML/XSLT/HTML, understand the structure of server, cluster technologies. Where to go without blueprints. Well, you should also know the hardware.

For everything about everything, you need 6-7 years of real plowing. And then you can claim $10k.

 9
Author: Barmaley, 2013-07-03 12:44:28

How many people - so many opinions. Where to start? To what the soul lies. Mobile, web, system, application programming? Decide on what you are interested in. I started with C, it gave me a certain base, a foundation in understanding programming, and then I decided for myself that I wanted to do application programming, drink coffee, sitting in the office, and swear at the customer for the crooked TK. If there is no spark at an early stage, there will be no desire to code for yourself, and not for the sake of " I will be a programmer-I will be earn a lot", then it is possible that programming is not for you. Good luck.

 7
Author: Eugene Mironenko, 2013-07-03 11:21:09
  1. Pascal. And do not snort that it is outdated, you can spend a week, because some things in it are easier to understand. In the same C, the syntax of loops and some other elements is clipped, the same brackets are used instead of begin and end , etc. (this simplifies the work of the programmer, but may complicate the understanding of the principles for someone who has just started).
  2. Delphi (Object Pascal) - almost the same pascal, only here you will have something to surprise your close classmates, you will be able to write small programs for your own application, simple bots and other small things. =) If you do not go into details, it differs in that Pascal is for console applications, and in Object Pascal you can work with windows.
  3. Well, then it's time to grow up and move on to C++. In parallel, study the structure of the computer, the architecture of processors, microcontrollers, and the structure of networks.
  4. then you can switch to Assembler (but in principle, it is more for techies working with hardware than for ordinary programmers). And so... See for yourself, there is plenty of literature in many languages, so you can master any of them.
 7
Author: ili_ne, 2013-07-03 13:31:09

I would advise you to learn C, then OOP-C++. These are classical languages. When you are already familiar with programming, then take up the study of computer architecture, operating systems and computer networks.

 6
Author: nullptr, 2013-07-02 20:01:59
  1. You need to learn programming, not language. Algorithms, data structures, and the like (while the argument "in Java/C#/Python/ all the necessary structures are already implemented" does not roll-knowledge of their internal structure is extremely useful for the programmer). The syntax of the language does not play the most important role here, it is only required that it is not too difficult for novice programmers.

  2. See point 3.

  3. And if you initially study under If you are strict, then you initially learn to discipline yourself and avoid a lot of annoying mistakes when developing in languages with dynamic typing.

 6
Author: fori1ton, 2013-07-03 10:10:16

Python is a very simple language, there are a lot of documentation and books, the syntax is logical, it will give an idea of OOP in the simplest form. Everyone writes on it, from web developers to NASA and CCP Games. So we take Mark Lutz and teach him. And then you can go to C++ and only after that, in my opinion, you can take up Assembler and lower and lower.

 3
Author: Ukeo, 2013-07-03 05:11:54

Start with C. At the same time, write everything in notepad with pens and compile it on the command line. Yes, maybe I will be confused now, but I am convinced that a programmer should understand how his code is compiled, how everything works at a low level. It will be much easier for you later, in the future. Get to the bottom of everything, never stop at "what the fuck do I know how ArrayList works in java, I use it and that's it!". Always try to solve the problem in a more concise way than you just wrote, everything time to criticize your code.

When you feel confident in C, and in general in programming, do not forget that the language is just a tool, you can gradually move to some object-oriented language. Decide for yourself what you want to do ! Web, mobile development, and detailed applications. After that, see which language suits you best, don't be afraid to experiment ! If you are interested in the web, then there is a choice of frontend development or backend. In the frontend, everything is clear HTML + CSS + JS, if the backend, then PHP/Python/Java/ASP. NET/Ruby...

 2
Author: KoCaTKo, 2013-07-03 14:13:08

Something no one said about Java

And you could also remember about php and web programming

In general, the guy start with C# and do not ask the labuden

If time could be rewound, then I would start learning with C# and not spend time on Delphi

You can also learn PHP, too, not bad

Personally, my immodest opinion is that you need to program in convenient object-oriented languages, which are most in demand and are not overblown due to ads

Of course, you can start with C++, but you will have to delve into and understand

Delphi pascal deprecated

Java is clumsy and overblown due to advertising, in the states on buses its advertising says for Java the future

Perl almost gave up the ghost

Basik school garden for computer science teachers

Ruby is a language for perverts and lovers of creativity, such as nyashek with glasses on his nose and Apple products

Python - not for Russia

 1
Author: dfhsfhgfj, 2013-07-13 21:45:04

Start with Delphi or Pascal - because the syntax is Pascal-I was created to teach novice programmers!

If you want Web technologies, then first for HTML with some PHP or the same Python

 0
Author: IVsevolod, 2013-07-03 05:05:57

I started with Small Basic, switched to Delphi (a descendant of Pascal), and made games in Lua. This allowed me to understand C/C++without much effort.

Try starting with Small Basic! Very simple language, good and simple lessons. We learned the basics on Skype with a friend in one evening. The next day, I was already doing SmallPaint. :)

 0
Author: meraven, 2020-06-12 12:52:24

Learn a language that brings more clarity than confusion; that is pleasant to write in and easy to compile; and that has integrated tools and documentation. Do not buy a lot of literature, since everything is online. Watch video tutorials on YouTube. Participate in interviews. Gain experience.

 0
Author: stackoverflow, 2013-08-02 14:54:10

Don't learn YAP, learn English! Learn math, structures, and algorithms. Deal with the OOP on the way.

For practical problems, take C (si). Later, you can easily deal with any YAP.

Here's an example:

 0
Author: tragvar, 2014-09-20 07:36:08

If you start learning Basic, C#, and other simple programming languages, you will never retrain to a more complex one. The ideal beginning (and not the beginning) is the OOP (Object-oriented programming) languages. These include: Java, C++, Python. Languages like C++ are hybrid OOP, i.e. most of the OOP is not available in them. There are pure OOP languages, for example, Java. And finally, I will tell you that if you are "drawn" to write in a language, then write in it. This will be more correct. Now almost everyone here has tried to defend the merits of "their" language and convince you that other languages are bad. This is not true. Every programming language has its own purpose. For example, C++ is almost universal, php for web design, Prolog for studying artificial intelligence.

 -4
Author: Helisia, 2013-08-03 06:22:36

If you want to be serious, it is better to start with C++. It is not necessary to study Si before this. Well, I can recommend the following resource: http://3dmax-lessons.ucoz.ru/publ/programmirovanie/c/6

There, starting from the installation of the compiler, Russification and further without solid terms, etc. Everything is accessible and clear.

 -5
Author: stranger140569, 2013-07-04 15:55:27