📜 ⬆️ ⬇️

Programming Philosophy 2 - Myth and Language

def Myth and language extends "three-way programming" ;

The myth that Russian programmers are the best in the world was not launched by party propagandists, it arose on a perestroika wave, along with myths about the owner-entrepreneur, the invisible hand of the market and a hundred varieties of sausage. The myth is that a person who does not read adult books calls “meme”, and a person who does not read at all, calls truth. Transfer "Mythbusters" takes superficial myths that can be easily refuted, for example, by throwing a butter sandwich a half thousand times. But Gordon, in one of his first TV projects, “The Assembly of Misconceptions,” took on the disclosure of myths more complicated, such myths cannot be opened by flooding the car and checking if you can still open the doors before the car is completely filled with water, they are like a floating bug which does not have “steps to reproduce”. Remember Holmes or House, the intellectual is primarily distinguished by the fact that he sees the invisible - while the panicked passengers peer into the fog overboard, he closes his eyes and peers at his "palaces of mind", recalls the map of the area and the performance characteristics of the steamboat.


“Everything is contained in my mind chambers, you understand what I mean, Mr. Holmes? I have the knowledge, and therefore I can click Dr. Watson on the nose for a whole day. ”

It is illegal to compare the Russian programmer and the American when they sit in adjacent cubicles and write in PHP. Seryozha from the Moscow region, who calls himself Serge or Sergei (y), is cream from the cake, the cream of our country, the guy is very cool, better than 99% of Habr's readers, he was able to break with the personal surroundings, move to the ocean, get a job, to learn a foreign language, and next to him sits a man named Scott, he is an analogue of those Seryoga's friends who stayed in Lyubertsy, and maybe drank, or maybe Windu Aunt Klava is installed, of course, if he was lucky and not drunk. Just Scott is not drunk, and works as a PHP programmer in a cubicle. It is not surprising that Seryoga writes the most difficult parts of the project, from one glance at which Scott shudders. You can not compare them. And who can?
')
In this room there is no one at all who is Seryoga’s American counterpart, his name is, say John, and he sits in a separate office, and even then he doesn’t sit very often, he is often not there, sometimes he enters the developers ’room and laughs loudly and radiates optimism and takes Seryoga for lunch, and at such a time when you cannot go out for lunch, say at 11:00 instead of 12:00. Seryoga guiltily looking around asks, "Is it possible now to go out," the labor brotherhood, aha, and John skillfully, so that there, flawlessly portrays surprise, pretends that everyone and you can always go where they wish. But this is not true, and he perfectly knows this. And this is the important difference between Seryoga and John, John is a politician.


“DHH - creator of Rail, a dollar millionaire, inspires eternal truths to parishioners”

American culture is saturated with politics. Remember "Harry Potter and Rational Thinking" - by rational thinking, the author primarily means a game, a social game. Who and what to say. How to do the moves. How to get others to make the moves you need. Do not lay out all the cards on the table, and if there are five important points that can be said to the boss, do not dump them all standing in the middle of the developer’s room as a nervous lady, wait for a personal audience with the boss and give one point. Next week, promise that you have something to say, make an appointment with the boss - you will say another point. Do the Move. Play with the boss, with the staff, with all. This is John. And Seryoga naively looks only at the code, sometimes reflects on life in general, about spirituality.

What does John think? John rotates the multi-drive, with many years. He talks a lot with everyone, with those who are higher than him and those who are lower. He builds connections, weaves a net. He is sure to describe in detail, everything he did, to everyone around, how, why, every piece of his work advertises, so that everyone can understand his contribution. His slogan - sell, each of his sneeze as a commodity. Do you think someone will look at the code and appreciate your skill? No matter how wrong!


"GitHub creator Tom Preston-Werner knows a lot about public relations, postmodernism and mass culture because he reads books on cultural studies and philosophy"

Recall the speeches of Jobs and Ballmer, the ability to talk about your code or project, talk a lot, speak beautifully, convincingly, vividly, LOUDLY, publicly and not publicly - this is what John has been able to do since childhood. He might not have read Machiavelli or Adam Smith, but all their ideas live in the children's conversations of the boys in Manhattan and the suburbs of Jersey and California. There is a brilliant Spielberg film “Empire Of The Sun”, it’s not about war and not about empire, it’s a film about Anglo-Saxon social and practical thinking, not so mysterious and far, really very close to ours in one of the vectors , the main idea is “if you want to live - know how to turn”, only with an emphasis not on the words “live” and “turn around”, but on the word “know how”, and even more precisely - “you want to live - know how to turn others and turn among them”.

We also have such "twirls", only they are not programmers. Thinking moms who want to attach their children better in life, send them mainly to the economy and management. And in the US, cunning moms shove their kids into programmers. If our university is an informal school of friendship of nations, then American is a school of leadership, social stratification, you either pop up in the elite, or descend to the losers. There is no third. You have to master the skills of “spinning” and “playing”. That is, people go into programming not to “do what they like, and even for salary” - they immediately, purposefully go there to earn money and win a place under the hot Californian sun.


“Here it is: an American programmer, he broke through. In a uniform crimson jacket of an English special school, there is blood on his forehead, in his hand there is a pot for the balanda with which he points the way to a bright Batman future, in the truck the establishment is afraid to lift its heads, behind it are hungry masses. Brilliant Spielberg symbolism. "

Seryoga thinks: at first I will learn to program cool, then I will think how to make money from it. Yeah, now. American John, teaches only what promises to make a profit. Not the first year he is still studying Scheme, but in the second he is already concentrating on Ruby - after all, most of the projects about which there is a rumor around the university have come up.

Imagine the youth crowd, where is the programmer in it? Our programmers hang out with each other, because in an ordinary get-together, their place in a dark corner is waiting for - when the second programmer comes, and on the social ladder, the programmer is a servant, a plumber, at best, a freak, a mad scientist. And such American guys as John - in the tusovka on the first roles, - hey, who are the stars in today's party? Yes, there are those two baseball players, a cocaineer with a management, a shaggy rocker and a John programmer. A person leads in society, if necessary - walks over heads, gnaws a place at the top of the food chain, knows how to talk to “ordinary people” like fish in water among “baseball players and rockers”, “managers and economists”, they are friends with him, they smell equal among equals, the elite clings to each other - useful people. Therefore, he can create Google or Github. Torvalds wrote Git, but he is a Finnish freak, the same as we, a techie, albeit with naive organizational skills of a kind, and Github is created by American children with a philosophical and business background, the grandchildren of the empire of the rising sun.


“Your phones contain one small secret; by themselves they don’t ring anywhere, it’s just a plastic box, it's like a charged M-16 without a Marine to pull the trigger. So, my fucking marines, don't hang up until a client buys our software, or dies. ”

Seryoga this conditional - today, he, like simple Russian men, a hundred years ago, broke hats in sweaty palms, wrinkled foreheads, trying to understand literate, “does the bourgeois get us out?”, “I mean, if I learn to read and write, can so my daughter can wear an English dress? ". This little man begins to understand that he was part of the masses, and maybe something else, could break out, not pump, not deserve, but break out. The point here is not westernization and not entrepreneurship, but just look out the window as crowds flow, what do you see? Chaos, Brownian motion, the human sea. But you are a programmer, well, think up some code, according to the principle of a turbine in a river or a windmill, download this code to the public. Let this code transform at least a drop of this public energy into something useful, if only to your salary, if not to solve common problems like lack of pineapples, flights to outer space or garbage on the streets.

Here, some programmers have created a company, say in the Novosibirsk Academy, took the famous old toy for PC, made a clone for iOS, rolled out in the AppStore, and suddenly flooded, sales - at the bird level. They received a call from Taiwan and asked, “Can we insert your clone of simcy into our ipad clone as a pre-installed toy?”, Damn it is a success! people think that they have become big business, bought champagne, hung 3D graphics in openspace, ride kites, lectures are read to students about Internet entrepreneurship, this is their idea of ​​high-tech business. But it’s not they who do business, they are room service, high-tech, yes, but they don’t do business, but for them, those who invented the ipad, invented how to organize people to use it, how to collect money from users.


“What is better programmed, the movement of airplanes around the airport, or the movement of men inside the terminal?”

That is a business programmer - “organize people using code”. Something like this: “gentlemen, listen to me, go here, put the money in the box, then go here - take the chocolate from the shelf, then the next one, everything is clear?”. Program. This is not business logic, this is a scenario of a children's party: we dance, rejoice, read poetry, ticket 100 rubles, dress elegantly, do not spit on the floor. Some people create algorithms for which other people live, work, have fun. Social algorithms. I remember how I lived at the Hong Kong airport for 10 days, I slept on a bench, no one “keeps order” there, no one looks at you at all, the terminal building itself, every door and a path - everything has already programmed the behavior of people, everything goes where it is necessary , but wherever you need to go is impossible in principle. The building itself is like a debugged piece of code tested by billions of user micro-accesses.

Just try for a few minutes to forget what the site or program is doing, what it is called, what frameworks are used, why people need it, just look at it as the simplest mechanism for organizing people: a person opens the site, wrinkles his brow, presses buttons, once, the money was transferred, it still clicks, once - told a friend that you can do the same thing. Virus. The code written by programmer John is executed in hundreds of thousands of heads, hands and feet, and they execute commands collecting money for Johnny. He doesn’t care if it’s 1% of the transferred funds, even 0.0001% is possible, it’s important that they carry out his social program, which he wrote on Ruby, for example.


“An American boy programmer thinks of an ideal person performing all his algorithms.”

This is how the American programmer John, an analogue of our Seryoga from the Moscow region, thinks. Seryoga, about whom the famous myth “the best programmers in the world are Russians”, is about. A Russian programmer is a 90% engineer, the rest is a mixture of a cosmonaut-dreamer, a pioneer hero and a village guy, an American programmer is a 50% engineer, 25% a businessman, the rest is a discoverer, politician, colonizer and philosopher.

In my last article I wrote that there is no open source in Russia. Somehow the founder of Gitkhab, Tom Preston-Werner, his wife, by the way, a specialist in cultural history, fixed a bug in one of the earlier versions of Ruby, well, corrected what was, and the fact that he published the entire process of searching for a bug on the forum step. So - this is quite typical for the Anglo-Saxons. I will say this: when three people write a small program, but along the way they pronounce each written line, achieving that all three start speaking the same language and seeing this small code in the same way - then a live project is born. The code itself is nothing, forget about putting the code in open access, think about the community, the language in which your community speaks, each comma in your project should somehow be called, and there should be at least three people who call every little identical word figule. A simple test, you should not stammer, any project participant point to any character in any project file by phone for no more than ten seconds, and he should find it and confirm with a phrase that he found it, so that you were sure. This is called a common language. To avoid these "I will send a screen, in it I circled in red a place where -1 instead of 1". This is the basis, verbal work with the code.

Open Source is not the project code itself, it is to program each other for a common understanding. Here you are putting a boy next to you 10 years younger than yourself and you begin to show your code, and speak for everything as it is called, but not called “in general” and “correctly according to the textbook”, but as you call it, even as this is called in your subconscious. This is how language, a common language, language as philosophy understands it. The linguistic community of people, a group united by language. And the project itself - it is primarily in the heads, in tongues, in the ears.

In any code there is imputed, implicit knowledge and it is spoken formally, in a variety of personal conversations. This is a discourse, the actual language of work and communication. There is no right language, "how is a function or procedure right?" Now they say “function”, if we all say “procedure”, then “correctly” will be “procedure”. I’m on the reader’s side, honestly I should say not “if we all talk”, but “if in the Silicon Valley they start saying“ procedure ”, then the PROCEDURE will be correct,” and we all will swallow it and this will be the right word. And on Habré will go the article: "how I studied fashionable procedural programming on the example of the new language Proceton".



Not so long ago, in world culture, there was a battle whose language will be decisive in philosophy, whose English or French terminology will win in world culture, and I’m not talking about the mass use of language for international communication, I’m looking at life through language and terminology, English terminology has won But the French were the leaders, their philosophy and cultural studies, and a look at history are head and shoulders above dried English formulas. Another example: not so long ago, German was fighting for leadership in engineering and engineering (locksmith, mine, cord, syringe), people taught these words all over the world, and also used the main international currency until 1914: the Reichsmark, but also German was forced out by the English language. The problem is that what group defines the language, she heads the project, you can’t do a competitive project without creating your own language in one form or another, it’s not even a technological lag, it’s deeper. To develop at the forefront, you need to constantly introduce new concepts, but if you don’t have your own language, then you, personally, cannot introduce a new concept, and you have to wait for the new concepts to come across the ocean, and we will learn them by reading their manuals. Let's say you made a website at work, 20 people, and someone came up with an advanced way of exchanging messages between modules, but what should you call it? This is a new way, there is no name, there is no term for a new concept - there is no new technology. Go to the store for books or the Internet and look for another way to exchange messages, one that already has a name. Nothing that this name was invented two years ago, then when it’s your technology, people can just call, and you can't, you are outside the cultural core, you are followers.

It’s not a battle between Russia and America, the West and the East, the question is whether you have an advanced team, a firm, an open-source project, a university, a public movement or not. No own language - no core, no core - no one to introduce new concepts, no progress. If there are no completely new terms, then there is no completely new technology. The matter is not what words you will take, English, Slavic, invented Martian language, words from the dialects of the peoples of Siberia or Japanese - the question is whether you have a community core that generates concepts and strings terms on them yourself these generated ideas. That's what programming philosophy is. This is not an ideal programming language in which you all break, it is the language in which you speak with each other. Remember, even kids in elementary grades sometimes come up with YOUR LANGUAGE and immediately a community is formed, immediately people feel themselves to be a part of something interesting.


6:
5:
4: «»
3:
2:
1:

Source: https://habr.com/ru/post/247363/


All Articles