To begin with, I will explain what a pseudo-or under-programmer is. In fact, there is nothing wrong with these people, and they do not harm anyone. This is a kind of cohort of individuals who dared to consider themselves programmers, and in fact are the ones who program (again this word) in the 1C-enterprise environment. And I, one of them. And for a long time.
In fact, I came to these ranks not by chance, but quite deliberately. And the reason is simple - it was necessary to somehow feed. Apparently, I am not a very talented person, because I didn’t work very well when working as a C ++ / MFC coder. Well, it's all the lyrics, the case has nothing to do. I wanted to say otherwise.
Am I trembling or do I have the right to be called a programmer?
Many laugh at the wretchedness of the so-called "built-in 1C programming language", we call this language more simply - v7 or v8, depending on the version.
')
I will say right away - the language is primitive to inconceivability. For example, it is completely in Russian, which at first is very fun and annoying at the same time, there is not even a hint of OOP, although it is not clear to me that it was not implemented in v8, there are wonderful logical inconsistencies in both versions of the language. The brain of a normal programmer from such is locked up, the convolutions straighten up, the skill drops. This is an absolute fact. But, gentlemen of the jury, is the instrument a cause of degradation? Is it not the man’s cause?
Looking at the code of typical configurations (these are such boxed solutions written by 1C specialists in the same language for automation of accounting) I want to prydat and then shoot myself, so there everything is enchanting. I think it is because of them that the term "pseudo programmer" appeared. The main trouble with the accompanying - twirled there, broke in ten places elsewhere. It would seem, is it difficult to observe the simplest principles of cultural programming when designing, because there are prerequisites. Who makes the developers directly access the data of a particular object? You can also write get / set methods, cramming necessary checks into them. This is especially true if the configuration is sawed by several people and someone suddenly changes something for their needs in the global (this is such a common sandbox with global functions). Who prevents to create a universal library of simple functions and use it from configuration to configuration? Who bans all error messages to provide unique IDs and process them centrally? Is it difficult to implement a logging mechanism depending on the required level of output of messages? I constantly meet with procedures of hundreds of lines. Why not break the hulk procedure into smaller parts? No one has also canceled the naming conventions for variables, and it is possible to agree in the way that is convenient for the team, there is no need for a hangiree note here. Likewise, it is possible to accept an agreement on the design of the interface, for example, I have standardized the size and location of widgets on forms. And you can also use a whole bunch of usefulness, purely "adinese" specifics. As a result, the code will be an order of magnitude, or even two orders of magnitude easier to accompany.
But I have never seen this in any 1C configuration. Everyone creates as God puts on his soul and as he pleases. But why? It seems to me because 1C is easy. The development cycle of the final product is very short. I am a primitive language and do not need to know English. Any girl with the beginnings of knowledge of accounting can learn the basics, more or less write reports and call herself a programmer. I do not argue, this girl is potentially well done with a capital letter. But no less than with obtaining the rights to drive a car - where two-month courses are obviously not enough, culture should be grafted, and there is no one to graft it, since the layer of adware is somewhere aloof from the programming community. And what to do with it, I do not know.
Maybe this note will help the “pseudo” part to think a bit, and by its example it will save 1C specialists from this degrading console.