Imagine a conveyor belt with programmers: people sat down at one round table, one huge monitor in the entire wall, and everyone still has their own usual one.
First: in the tone of the starship captain, the connectToDB () function is needed in the main file.
The second one: - I open it - open the necessary file, find the function.
First: - what is happening here?
Third: - I launch - sets a breakpoint, starts the application, says: - dbinstance in order - displays the value on the screen -, remotePort is equal to 8999, - this value is also visible on the screen.
First: - strange, it would be necessary to profile this challenge.
Third: - ok - dictates to the fourth - new line 123 console.time (), 125 console.timeEnd ()
Fourth: dials - ready.
The third: starts, - the execution time of this block is 150 milliseconds.
First: - aaaa, everything is clear, we remove the tuling of the profile, we add a comment that there was such a problem in this place, we change all cases of the appearance of the variable checkRemote host port to checkLocalPort port, - sipping a tea with jam.
The second one: finds all the required entries using the search.
Fourth: replaces problem areas.
Fifth: - I need to gash koment.
The second: - yes, - opens the function again.
Fifth: - I’m writing that you should always check localPort - it’s driving in a comment - it’s ready.
Sixth: - comm, - typing git commit -am "fixed bug 1827 with connection to database server", git push.
Seventh: silently banishes all the tests but a new commit, makes comments to the bug tracker.
Eighth: - a commit came from the St. Petersburg office, and the update of the visual studio has been completed.
First: - well, put an update, then merge and run it. - bites cookies, drinks tea with jam.
Such things are observed in the MMORPG: warrior, mage, strategist, defender, doctor, thief. And in programming, managers would have already introduced a pipeline, but it is impossible to turn a programmer into a mechanic, he remains a creative person even in the conditions of super-narrow specialization. For capital, this is a problem, but for the programmers themselves, this is good. The programmer, as it were, was not formatted, it remains similar to the screenwriter: I’m writing an action movie script, twenty thousand people and two hundred million dollars are waiting for me to get everything ready. From here, Java, C # and Haskell were invented - to format the programmer more and more. That is, the programming language has long been not only a tool in the hands of a programmer, but also a tool for managing a programmer, fitting it into the pipeline.
')
The conveyor, that's what it is, is when robots collect jeeps. Yeah, if you would. It is easier to teach a person a simple operation than a complex set of operations. It's one thing when you need to train ten shoemakers to make shoes from start to finish, and another thing is to teach every single operation. Count, if not lazy, what scaling. It turns out that it will take almost as much time to train a thousand people for a pipeline as a single full-cycle specialist. That is, the conveyor appeared long before the robots, and the essence of the conveyor: “soft-technology”, the technology of organizing and training people. And the organization itself is a special case of learning. Specialization is inevitable. Already now in your company there can be a person who writes only a UI code, or models only cannons. But so far, the programmer remains a “star,” in the sense that his work is unique and is a work of art, and the programmer must constantly “sell himself”, convince others that his code is good.
The conveyor is not the only "soft-technology". The problem is that we just lag far behind in these various "soft technologies". And I am not only about “management technologies” or “learning technologies”. I'll try to explain. When a newspaper was published in Europe in every town, scribes in Russia did not become an estate. This tried to fix Peter, there is such a term - Westernization. But the essence of Westernization is not to dress in European fashion, but in that from a society where everyone thinks the same way - mono consciousness - to turn into a society where people dig everyone in their own way. While one planes the ships, the other composes sonnets. It seems to be. But no, that's not it. You can remain a mono-conscious society, and just assign people to different tasks. What we have going on to this day. In the west, you are not assigned to make ships, you make it up yourself, no, not ships, but this task itself. Independence in the search for tasks. I'm not saying that this is good. It's just the way it works, I point the finger at the fact. But you can appoint people only to those classes that someone has already invented, that is, there will always be a lag behind those who, in fact, have invented.
How did they do it? The point is competition, but not in the competition about which fairy tales were told to us during perestroika, where everyone happily competes on an honest basis, observing the rules and laws, and in that competition, where you gnaw through throats - to survive. You lie, dodge, commit meanness, smile, and then hit in the back. But this is not enough, otherwise we would not have a technological gap. There is one more thing. Group competition. Highly organized groups competing with each other. And their highest form, which I call the “tent”. You can call it the "brotherhood of the ring", "Ocean's friends", "pirate team." In our country, this is simply called a “gang” or “robber gang,” of course, with a negative nuance. The bottom line is that the competitive individuals, each of which is used to everyone to gnaw through the throats, to survive, to dominate in any community, or at least simply have the highest qualifications - come together, in one "tent", in one gang. Together they carry out the task, "pass the level", "get Escalibur and other nyashki including gold and XP", and scatter. Such a group consisting of competitive individuals with their specializations turns into a highly competitive unit. That is, it is not just a gang, but a gang consisting of gang leaders, something unimaginable for us, and in the west it has been a key form of organization for hundreds of years.
Sadly, here I will have to make a small digression, and to show what a traditional society is, where there is nothing of the kind, and even if it does, it is not welcome. Here's your dad says in his childhood: "Do not do that, not good." And how does he know what is good and what is bad? And dad told him too. And all these daddies and children think alike. Great public mega-brain. The whole country look at the new year about how the boys went to the bath. At some point, this mega-brain, a traditional society, understands that in order to resolve internal conflicts and fight external enemies, it needs a leader. That is, it is necessary to rally around the king. There is nowhere to take the king, yet they are the same, and that’s what the dear Rurikovich’s guests come and own. All participants tune in to the leader as a tuning fork, as a generator of new ideas. If you have a new idea, you, again, go to the king and report it. And he accepts it and translates it into society from above, or discards it. By the way, “traditional society” is a term that is being guided and so on.
Successful Western startups, IT companies, at least at the time of creation, this is a tent, a gang of pirates. Jobs actually raised the pirate flag over his office at some point. Silicon Valley Pirates. This is not a conversation, it is - technology. In Russia, IT firms are polls - traditional societies. Everyone thinks the same, there is a king. Of course, I exaggerate a little, but in fact it is. In fact, there is an intermediate stage - professionalism. This is also technology. This is not quite a traditional community, but not yet a “big one”. Professionalism is when you are taken into a team, you have to be part of it, in the traditional sense, to be like everyone else, but you only need your “competencies”, you as a person, as an individual, can be completely free, nobody is interested , at least pick your nose, but at the moment of contact you must be formatted and impersonal. That is, you are divided into two parts, with one you do what you like, and on the other, professional, be strictly as necessary.
But in Russia, even professionalism is rudimentary, people only master the main characteristic of a professional — the creation of complete statements. That is, you communicate with a person, as with your own, gradually coming to understand each other, on an emotional, everyday level. A professional communicates at the level of complete statements, such communication does not require any kindred and involvement, but the statements must be complete and complete. Not “I tried to do it, it seems, something is working”, “oh, Misha, let's talk later, nothing is clear yet, but it seems to be ready”, and “the situation on Thursday is as follows: items two and three tasks 123 are fulfilled, the completion time is next Friday ”,“ I ran into unforeseen difficulties in carrying out paragraph 5, the negotiated deadline will be disrupted ”. Those who faced this, will understand what I mean, and immediately, the meeting is a sore subject for the entire industry. Instead of talking to a person like two highly intelligent creatures, we prefer to “sniff”. Let's discuss on Skype. Well, let's what to do with you. The need to clearly articulate the state of affairs causes a headache in a person. Usually a year of working with a western customer decides.
An important feature of the “tent” is that after completing a mission, having robbed caravans, for example, people “run away”. And having run away they put together their gangs, groups, create new companies. And they carry all the technological breakthroughs that they received in this task, in the previous group. Reproduction by division and budding. Any modern corporation, or mega-corporation, is a traditional society in its lower part, but at the top, there are always gangs. These are pirates, they create or seize corporations, rob them or modernize, sell and buy, break up, divide, connect and connect. This is a completely different world, and very opaque. The external, official side, as a rule, does not disclose the members of this “gang” in any way. In Russia, there are enough groups competing to death, but they are all arranged according to the principle of wolf packs, “we went to the rocking chair”. Very rarely, they generally change the structure, are separated, and then with the conflict and the terrible shock for all. “Chapito” implies that people, often strangers, quickly gathered, did business and fled. Technologically.
The main thing, of course, is to be able to communicate with equals, because we have more than enough heads and subordinates, some are able to obey, others are commanding. It just pisses me off that how many times I have not tried to communicate with talented people on the Internet, authors of interesting programs, libraries, or organizers of communities, websites, communication from them is always inhibited because they are waiting for that, or I will head them, I will give you a job, and they will obey, (this is the “case” immediately), or vice versa, I will obey them, “I will be available”, also the “case”. This is the stone age of communication. There is no equal culture of communication at all - this is considered a waste of time. Well, or then personal friendship, that is, no complete statements, no communication algorithms, we will “sniff”, “thump together”. Do you need it?
Jobs, who “did not understand exactly what he was doing,” actually introduced the technology of a big top into the development of IT projects. At first he applied it intuitively, hung out the pirate flag above the office, but after working in Hollywood, which all works on the principle of tent, enterprise, project-oriented-production, he began to consciously work on new projects in Apple as they work on Hollywood projects: the gang is going pirates, motley talents, but not just in one place on the salary under the leadership, and UNDER the PROJECT. The deadline of the project is at the same time the deadline of the gang dissolution, all forces are concentrated on the script, then on the set, then on the postproduction, only in Apple it was applied on their IT counterparts. The release of the next Mac, it's like making a movie. This solves many problems, I don’t want to go into details, but for example, you can’t afford to take the best designer in your company to your company, but you can invite him to one project with a clear deadline. Advanced "gangsters" have long understood that it is more fun to create gangs, punch through one project and donate it to the traditionalists, but also more profitable than grabbing one thing and taking it in traditional ways for many years. Founded as Jeff Atwood by Stackoverflow, or as Tom Preston-Werner, about whom I already wrote, GitHub, got his own, he surrendered to "ordinary people."
It turns out that it is very difficult to compete with such structures, their level is the most advanced one possible. The options are as follows. First, understand how the "tent" works, why it is so effective, what is the history of the issue. Understand whether we ourselves can work according to such a scheme, try, search. It may be to find a weak spot in this technology and to offer its own, stronger one. Indeed, although the society of total competition has generated a society of competing groups, with their accelerated development and “reproduction of knowledge,” this is not the only way. The super-traditional Russian and, later, Soviet society had its advantages and quite competed with the Europeans. Consolidation and sameness has its advantages. But one thing I know for sure, if you don’t understand what the power of the technology of the tent that made the West, in general, and Western IT, in particular, then it will be difficult to participate in the global economy in equal measure.

Group "tent" in the role of the group "tent"
Programming philosophy6: Product and Project5: Reactos and Hummingbirds4: Chapito Technology3: Chichikov and programmer2: Myth and Language1: Three-way programming