What, in fact, do programmers do?

15 73

When you hear a question like this, you may come to say, “How do they do it? Well, they're programming! ” However, the answer to this question is not so short and simple. To see why this is so, let's start with programming.

PROGRAMMING

Programming could be most simply explained as writing very detailed instructions to a machine (desktop computer, mobile phone, robot). For example, if we want a robot to bring us a glass of water from the table, we will have to first tell him to come to the table, then raise one hand, turn it towards the table, spread his fingers or grips, move it until it comes a few millimeters in front of the object which we want to bring us, and so on.

The bottom line is that when writing instructions, we have to be very precise because computers (still) can't think for themselves. To give you a better idea, here is a small extension of our example.

If you tell your very obedient younger brother or sister to bring you a glass of water, they will do it. We don't have to tell them where the faucet is, where the glass is, or how long they should fill it. With computers, however, it is a little different - it is necessary to explain each step in detail.

PROGRAMMERS

Maybe someone, based on what we have written, will think that only those who calculate all the steps well can be engaged in programming, or they are simply geniuses. Certainly, these traits help, but they are not crucial. The most important thing is to be good at logical thinking and to think correctly about the problems you want to solve with programming.

Does that mean developers need to know how to fix computers? Of course not. Knowing the hardware that makes up the computers we work on every day is not a prerequisite for programming at all. For example, you don't need to know any hardware at all to program your game using Scratch, or ClickTeam Fusion.

"Okay," someone will say, "then developers must know all programming languages." Well, not quite. Although there are people who know and speak a large number of world languages, there are very few who deal with quality writing in each of the languages ​​they know. It is similar to programming languages. The choice of a programming language depends on what you want to program, whether you want to take into account what happens to the processor and memory while your program is running, and so on.

PROGRAM USERS

Before developers start writing programs, they must consult with those who will use them. There they will get to know the requirements of the end-users of the program. This step actually determines what the program will look like, what functions it will have, whether it will provide complete freedom to its users, and so on. In other words, the design of the program largely depends on the conversations with the end-users.

BUGS

If you spend a little more time at the computer, you've probably heard of bugs. Simply put, it is an unexpected behavior of a program - an unexpected interruption of work, a jam, an unforeseen impossibility to save the previous work, and the like. The appearance of bugs and their solution is something that every programmer encounters.

  • Why do bugs occur at all? Here are a few reasons:

  • the code (what a program consists of) is poorly written in some places

  • the developer did not take into account any possible behavior of one user

the program cannot handle the simultaneous work of a large number of users (for example, an MMO game is not intended for more than 100 simultaneous players)

WORKING DAY OF ONE PROGRAMMER

Having in mind everything we have written so far, we can finally answer the question from the title.

Developers:

  • device (design) programs

  • write the program lines that make up each program

  • they test the programs they have written, and fix bugs

  • write program documentation (instructions for end-users, but comments related to code parts)

  • maintain previously written programs (add new features and options, fix new bugs)

  • work in a team with other developers

  • meet with their bosses (senior developers) and clients (those for whom a program is written)

  • they encounter obstacles that they cannot always solve immediately

  • get annoyed (well yeah, can't do without it)

Of course, this is the working day of a programmer who works in a software company. Those developers who work independently, and at the same time independently develop and program their games, must know how to draw and compose if they do not want to use other people's works.

Finally, here are a few questions for all those who are hesitant after this text whether programming is for them (an infographic that contains these questions, and which served as inspiration for this text, can be found on Karl Che's website).

1.Are you interested in logical problems and puzzles?

2.Do you want to learn new things (most of them, on your own)?

3.Do you have enough patience and perseverance to solve complex problems?

4.Are you interested in how things around you work at all?

If you have answered yes to these questions at least two (or three!) Times (in total, not just one of them!), Congratulations! You have met one of the prerequisites to start programming.

24
$ 3.63
$ 3.61 from @TheRandomRewarder
$ 0.01 from @Monolith
$ 0.01 from @Vicky123

Comments

Great information about this article my Dear

$ 0.00
4 years ago

I would like to learn programming, I am very attracted to that job

$ 0.00
4 years ago

Wonderfully written. Hopefully catch some readers eye enough to make them think 'hey I can be a programmer too'

$ 0.00
4 years ago

This article on programming is really awesome.

$ 0.00
4 years ago

Thanks for such an interesting and detailed article

$ 0.00
4 years ago

Some people I'm close to are programmers and I've seen them constantly frustrated at bugs XD it's amusing when you're not the one seated and typing

$ 0.00
4 years ago

I had a rough idea of ​​what developers do. this article explained it well and completely.

$ 0.00
4 years ago

I often use HTML and CSS in my job, and more recently I have been learning Python too. But I don't consider myself a 'programmer' - these are just tools that are sometimes useful to me. Maybe I need to make the leap from 'person who programs' to 'programmer'...

$ 0.00
4 years ago

Great information about this article my Dear

$ 0.00
4 years ago

Many of my friends work as developers, some of them tried to do programming for good money but failed. All of this is very complex thing and there must be a will to progress and a desire to learn on a daily basis.

$ 0.00
4 years ago

I am a programmer by profession, but I have never done that job. Life took me in a different direction.

$ 0.00
4 years ago

I have done programming from html, php, RSS, java, chi, c++ and python. Python seems to be the best language to write most scripts to be compatible on both linux and windows. I also prefer linux over windows

$ 0.00
4 years ago

I like this article, didn't get much time to read through all of it, but for the little I read, I am already interested in programming. Is there a community here on read cash where stuff like this can be discussed?

$ 0.00
4 years ago

Nice article to make

$ 0.00
4 years ago

Great article. I like the questions at the end. If you answer at least 3 then they are for it, if not again they know they are not for it :)

$ 0.00
4 years ago

I've been thinking lately about enrolling in a programming course or something like that, I'm fed up with learning something and knowing more.

$ 0.00
4 years ago