
One day, the day will come when the programming commands will look like, "hey, computer, do me the hell of this."
What is going to be under the hood, no one living soul will understand. The command "fucking" is interpreted in a paragraph with a description, which is interpreted into keywords, which is interpreted into a set of vector symbols, which is interpreted in some C, which is compiled into ...
')
and somewhere down there will turn into electrical impulses on the pieces of iron.
Programmers will be polished humanities with "high verbal abilities, communication skills and the ability to be a teammate." Thank God until this day, as before Alaska on a harness, but each time inventing the next Kotlin, we are bringing this day closer.
I just wondered if our YaPs had already become something like that? Slightly more intelligent equivalent of the phrase "computer, make a crap." A bunch of formalized protocols for electricity, about which we have already forgotten to forget. A thing that is increasingly tearing our connection with mechanical reality.
I often hear the phrase: “Phil, step back, stop thinking about all kinds of nonsense.” But damn, damn that day, when they write on Habré "stop thinking."
I have a lot of small projects at work, and we use different stacks - .net, React.ts, c ++, Java. What are you a little prosharen, then hang on you. I came as a dotnetchik, but there are tasks on the board for all applications, access to repositories is also.
There was a case when all the shuffles in my stack were full of crap, which only a madman would take up. I am not insane, and I began to take taskki with typing script and react, then with Java. All applications do about the same thing, but are designed for different platforms. I had no problems.
So I wrote a piece that chooses the best server on Sharpy, so I went to do the same on Java. The same, exactly the same way. At first, he did not attach importance, but at some point it was already very difficult not to notice the pattern.
I just did the same thing in different programming languages. This code was very similar, with the exception of parts that do not affect the problem being solved. After all, business does not come to me with the words: “Hey Phil! We need to use abstract classes to display the connection status to the client. ” Business and users want the device to show them the picture. Yes, and I really also just want to show them this picture.
But I can not. You can not just say the car: do what I need. So far, I am the same intermediate interpreter, which turns the phrase "make a damn thing" into commands, while I still have to explain in detail and step by step to the processor where and how to put fucking bytes.
But I no longer work with bytes. I work at a very abstract level with pieces that produce a factory of factories that manage these bytes. There is a piece of iron down there, and it is even more complicated - I have no idea how what is being done there. But it is done through a hundred prisms, about which I also have no idea. Half of what I want to say to the car, she “thinks out” herself, and I don’t know how.
It was as if I sealed the hood of a car and began to repair it through the exhaust pipe, which becomes longer and longer each year, and once, in order to fix the engine, I just have to shout into the pipe, and not climb my hands.
The pre-compile turns my sisharp into an intermediate language (IL), which travels by car to the client, where, in turn, another pre-compile (which just-in-time) on the fly turns my IL into a platform-specific code, which in turn is fed to the processor ...
And somewhere there all my formal descriptions, all differences between YPs are erased, and they do the same thing. On fingers:
I know that the processor knows the O1 command. Having received it, it pulses with electricity into the built-in microdynamic, something will perekknet somewhere and there will be a squeak.
And here I am writing sisharpe:
using System;
Console.Beep(500,500);
1
:
#include <windows.h>
Beep(500,500);
1.
, , System.Console, windows.h? , , . , , .
, . - , , , . , — , .
. , , . , « », .
, — , ? , , , .
? , 2019 .
, — , . , , . , , , , , , . .
, « , x86 ARM. », . . , , .

, . . , - , , , , — , . - - . .
- (, , , , — )
. , , , . . , . , . .
— . . , , , - . — , , . , , , . .
«, , », ? , , , . , .
- , - , «» «» — , . , : « !? , ».
, , .
. , , .
, . , , .
20 , , , , . .
- « » , , — . , . .
. , « » . , , , . , , , . , , , , — . « » — . , , . ( - , «-»).
— . , , . , - — , . , , . -. , .
, , , . . — , , - . , .
. -, . — , , , . , , , , . — .
, — . , , , — . . . .