How a humanities-minded person can become a programmer?


Let’s imagine a situation when a person lives his calm life and suddenly the thought comes to his mind, “I want to be a programmer!”. We ask the experts where to start.

Software engineer

There is no simple answer to the question “How to become a programmer if you are a humanities-minded person.” This is a long and hard work, especially self-improvement. But still, there are many examples from life when a person who is far from IT suddenly becomes a good programmer. The word “suddenly” is not suitable here, because you have to read a bunch of books, attend a lot of seminars, webinars, “shovel up” a lot of forums. The transformation process will be slow and gradual.

First you need to determine in which direction you want to develop. Now there are quite a lot of directions in the field of IT, so you can’t just choose to be a programmer. For example, you need to define a language. Backend/frontend? Maybe you don’t want to be a “pure” programmer, and your heart belongs to DevOps? To make sure that your choice is correct, be sure to visit job search sites and see which specialties are in demand and paid the most. These are important questions that should be given close attention.

The next step should be reading a lot of books and forums dedicated to the chosen direction. Your favorite place should be StackOverflow. Books should be the most basic (for dummies, for children) with increasing complexity.

It is also very important at the time of your “perestroika” to find a job in your future specialty in order to receive the necessary information on a desired experience. This stage may be associated with the most minimal payment, but these are the sacrifices that are worth making for the sake of future prospects.
You can and should ask what is not clear to everyone who owns the topic. Therefore, if there is a knowledgeable person or colleague “at hand”, then this is a great option for obtaining information. Acquiring IT knowledge on your own is, of course, possible, but not the fastest option.

You can also get a second or third higher education in any convenient way, or take special courses. Fortunately, now it is possible to do this very simply and quite cheaply with the help of various online courses. The main thing to remember is that theory without practice is dead and any chapter or paragraph you read should be applied on your test machine. Training is a very important step in shaping you as an IT specialist. “Not a day without a line” is what should lead you to success, and if you follow this advice, the reward will surely come.

IT developer

My short answer is in no way. But if you continue to read, then I advise you to use your forte: humanitarian knowledge and understanding of people. Analyze your motivation, ask yourself the question: “How to become a product manager?” or “how to become a project manager?” – perhaps, this area will suit you better. But if you are sure that you want to become a programmer, then the recipe is simple: sign up for a Python programming course. Get ready for iron discipline: write down each new term that you do not understand, look for the answer to the questions “what is it?”, “why is it necessary?”, “why does it work like that?”. After a while, a coherent logical system of concepts and a certain way of thinking will begin to appear in your head. If you can hold out for 2 months in this training mode, then you have a chance to become successful in this area.

Now, in the conditions of the digital economy, it’s time to actively learn how to work with digital, and the humanities too. Acquire digital skills in general to use new tools, algorithms and powers. The hardest thing is to truly be digital, that is, to think strategically when working with data, to develop and improve your work processes with the help of technology. This requires the development of a culture of working with data, as well as an understanding of the basics of cybersecurity and the peculiarities of digital communication.

Director of Information Solutions Department

My experience of making an IT specialist out of a humanities-minded person failed, and so far I have not had another such opportunity. We had an internship with one guy who wanted to change his profession to an IT specialist. That one did not work out.

If there is motivation and / or a great desire to continue doing this (which is also important!), then first you need to take one or more courses on the basics of programming. Knowledge of English does not limit you in choosing a platform for learning. Some at the end of the course and after successfully passing the tests issue a certificate – it will come in handy when applying for a job.

Next, you will have to learn at least one classical programming language: for example, Java or Python. It is necessary to understand, using the example of a specific language, how algorithms are implemented in high-level languages, what basic language constructs are, how they are used, etc. It is necessary to learn the language in some development environment – they are very helpful for both beginners and professionals: IDEA, Eclipse, NetBeans, JDeveloper, etc.

Well, one more, alternative option: go for an internship in some company. Similar programs for beginners or professionals without experience are quite common. The advantage is that in a team of like-minded people, training is much more efficient, and you can also automatically solve the issue of employment.


I’ll tell you how from a humanities-minded person I became a programmer. I was 25 years old and worked as a public relations specialist. At some point, I realized that I literally hate what I do, I am dissatisfied with the salary and I am ready to change jobs as soon as possible.
I thought about what I want to do, and realized that the main criteria for choosing a new specialty are the following:

  1. I should like what I do.
  2. I want to communicate less with people.
  3. The new profession must have the possibility of development.
  4. There should be a decent salary in a new place.

The choice fell on the profession of a programmer, or rather, a frontend developer, because it seemed to me that there was the lowest entry threshold among all areas of programming.

I started my journey with coding. I spent about two months on interactive online courses, after which I got a job in a company that was engaged only in coding. At first, my salary was very little because I had little experience and there was still a lot to learn. Hence the advice: if you are going to radically change the field of activity, first prepare a rainy day fund.

I worked in this company for a year and a half. During that time I became a confident coding designer. Mastered Git, Webpack and Gulp, LESS, Sass, BEM, Jade, aka Pug, Bootstrap and simple JS tasks (connect a plugin, configure it, add a classic, etc.).

After that, I got a job as a coder in a company where I still work. For some time I abandoned the study of JS (don’t do this! This is my main mistake on the way from the humanities to programmers), but then I returned to this. To do this, I took another online course in the specialty frontend developer and mastered an online JavaScript tutorial. By the way, I advise you to start learning not from JS itself, but from the basics of programming in order to understand how everything works inside.

A few words about why I have always preferred courses (especially interactive ones) over books. The books give a detailed theoretical background, but without practice and the guidance of a mentor, it was difficult for me to learn it. Interactive courses, where theoretical knowledge is given in parallel with tasks in an online editor, solve this problem: they guide a person from task to task and point out errors. This allows you to assimilate the theory on specific examples and accumulate the first experience.

In the current company, I was engaged in coding for the first time. Gradually, tasks in JS began to appear, which became more and more difficult. I coped with some of them myself, with some other more experienced colleagues helped me with a piece of advice. Then I was entrusted with a small internal project on Vue.js, which I coped with, then a large project on Vue.js, and in a year of work on it I grew to a full-fledged frontend developer.

Thus, it took me 5 years to go from PR specialist to frontend developer. But if you study more intensively and are less lazy, then you can fully master this profession in 2-3 years.

What can I advise people who have decided to radically change their field of activity and get a job in IT?

  1. Do not delay learning and get a job as early as possible: experienced programmers from among new colleagues will tell you what to learn, and thus accelerate your development.
  2. Do not be afraid to go to interviews: many IT companies are ready to take people with minimal training and train them.
  3. Practice as much as possible.
  4. And most importantly – enjoy your new job!

Head of Information Security Department, Director of the Training Center

Before moving on to practical advice, I’ll say the main thing: if a conditional humanities-minded person wants to be a programmer only because of the “money” of the profession, the plan is a failure. The first and most important condition for a successful transition to IT from another field of activity is a sincere passion for hardware, numbers and algorithms, without which even the basic foundations of the profession cannot be mastered.

Let’s say there is passion. What’s next?

  1. Decide what exactly you want to do. There are a lot of areas and specializations in IT, and with widespread digitalization, it only becomes more. In addition to programming itself, you can try yourself in professions at the intersection of IT and the humanities: for example, in UX design or SEO optimization of texts. If you have worked with texts or pictures before, the transition to a new profession will be easier. If you really want to code, you still have to carry out reconnaissance: creating “brains” for gadgets, writing websites or making mobile applications are different things, you need to distinguish between them. Start from specific applied tasks. This will help you decide what skills to pump and what not to waste time on. For example, if you’ve always dreamed of building a fighting robot, you don’t have to learn HTML.
  2. Pull up the “base”. Whatever direction you choose, in any case, you will need a foundation of mathematics, logic, and knowledge of algorithms (and it’s good if you have at least a little mathematical mindset). At a minimum, download a couple of textbooks for the first courses of the university. The necessary ones are easy to find in the curricula of popular “computer” areas, as a rule, any university puts them in the public domain.
  3. Study profile vacancies. This will give you a formal idea of ​​what a programmer “should be”. The vacancies always indicate the requirements for the necessary skills: knowledge of this and that language, possession of this and that technology. Select the list of “minimum” that occurs in most descriptions, and start mastering it. Then look at the “hangout” from the inside: read profile sites, chat on forums. So you will be aware of the current issues that concern the professional community, and also enlist the support of “big brothers”. Feel free to ask questions to the old-timers of these sites – many resources have special Q&A sections for this. There, the beginner will be prompted with literature and useful courses in order to master the necessary skill, and even ways to solve specific problems.
  4. Study, study and study again. And be prepared that the learning process will be endless. IT is developing rapidly, in order not to miss a new trend, you need to constantly keep your finger on the pulse and improve your skills. And there are no easy ways here – even if you start learning the conditionally “simple” Java language, in order to then compete in the market, you will have to master a lot of related technologies. But that’s no reason to give up. There will be more pleasure from the process if new knowledge is immediately translated into practice. Write your conditional “Hello world” – when you see live how your knowledge works, the motivation to continue will increase at times.

So, summing up: How a humanities-minded person can become a programmer?

In general, everything described is also suitable for “techies”, it’s just that certain things can be more easily absorbed by them due to the presence of a technical base.

First, decide on a direction. Suddenly you want not just to program, but, for example, to engage in Data Science. For successful learning, it is important to have motivation; otherwise all desire will quickly disappear.

Then you can take some course (or several) on the basics of programming, for example, Harvard CS50 “Programming Fundamentals”.
Then you need to decide on the programming language that you plan to learn. Usually the choice is stopped at one of the following: Python, JavaScript, Java, C++. Don’t go straight to the frameworks of the language, pay enough attention to its basics. The basic concepts of many languages ​​are quite similar, learning them now will save you time in the future.

Don’t limit yourself to just one theory. It is important to consolidate the acquired knowledge in practice, so if there are any tasks in the material being studied, be sure to complete them. Even better, if you have an idea for a project that you can implement as you learn the language.

Dig deeper if you don’t understand something. Various forums, chats in Telegram, StackOverflow, Google are your faithful assistants in this matter.
Alternate sources of information during training. Perhaps what seemed complicated and incomprehensible to you in a book or documentation will seem simple when watching a training video or article.

Do not be afraid to go to interviews: many IT companies are ready to take people with minimal training and train them. And at work, experienced programmers from among new colleagues will tell you what to learn, and thus accelerate your development. Good luck!