In fact, there is only one way to know whether you can or not. “To start programming, you need to start programming. And to start programming, you need to start programming!” Many people think programming is a difficult task, you need to know a lot to work as a programmer. And it is true. If it were simple, they would not be paid such large salaries. But on the other hand, there are many books in the public domain. And most of them are of high quality. Professionals from large companies tend to write huge books or articles that describe their invaluable experience to others. Strange people of course. Instead of receiving huge sums of money for work, they are engaged in writing, for which they pay less or even nothing. These “oddities” will be considered later. And now we need to clearly understand, there are very few secrets in this profession. Most issues are resolved by searching the Internet. Therefore, despite the complexity, programming is one of the most affordable professions.
During the trial period, you need to decide on the technologies on which you will start. They should not be too complicated and long to master. But, on the other hand, they must be in demand by the market so that even those couple of weeks or a month spent on them are not wasted.
Personally, my opinion should be:
Very simple programming language. To be more precise, this is not even the programming language that everyone is used to. Procedural and object-oriented, such as C PHP, Ruby, etc. It is impossible to write on it, “what to do in the store.” This is a markup language that you will find on any web page. The instructions of this language look something like this: “This paragraph should have an oblique font”, “Here display the picture picture.png”, “The font size of this piece of text is 12 points. The color is red. This is a very useful language for beginners. Even if you are not going to web development, this knowledge will be useful to you. Estimated development time, 2-5 days. At the same time, it is not necessary to remember extensive reference data. It is enough to learn how to use these very directories. Among programmers, HTML is not considered serious or complex. But ignorance of the basics of HTML, what you can admit only to the closest people. Employers and colleagues will perceive you as mentally retarded.
As you learn HTML, you will constantly encounter references to CSS technology. Learning is not necessary at this stage. But if you get carried away with CSS, this knowledge will not be superfluous.
This is a “real” programming language. His study is closely related to HTML. Here you will find the first real difficulties. Although the language has a huge number of textbooks, video tutorials and all kinds of sites where everything is chewed to the smallest details. This will be a real test.
Surely someone is eager to start learning C, Python, and even Haskell. But even if you are going to become a system programmer. Most likely, sooner or later you will come across HTML and JS.
One of the reasons for choosing JS as the first programming language is its applicability in various fields. Starting with the client-side web page logic. Finishing with a JS-like QML language, where the developers of the Qt framework are dragging us.
If a novice programmer does not know simple things, there is not much difference where to start. The proposed technologies do not require large and heavy development, execution environments. On the a lot of textbooks and reference books in Russian. No need to be confused with address arithmetic and similar specifics. Your task is to learn how to make basic logical constructions such as loops, branches, etc.
Any textbook contains exercises. And at the initial stage, you should do these exercises. The bigger, the better!
However, there are two small categories of people who can replace JS with something else:
1. Those who have good mentors in other programming technologies.
For example, brother matchmaker, who works as a system programmer C. And he is ready to help you. In this case, C may be preferable. But as far as I know, about 30% of programmers are WEB programmers. So with high probability, JS will be the right choice.
2. People who need some other language right now to work. System administrators, usually SQL and bash.
In the case of SQL, I would not flatter myself. This is also a “fake” language. The complexity between HTML and JS. Most likely, he will have to be taught to everyone. But over time, I would advise that you still try something like JS that supports the procedural and OOP paradigms. There is still a plus in learning SQL. If you do not master it, there is no point in continuing.
But with bash, everything is different. Heard, JS allows you to replace bash through a module in node.js. So, if you need to write scripts from scratch, JS will be more interesting. If you correct what is written before you, then there is no other choice. Just like with SQL, JS will remain in your queue.