Нектарокодеры
От: mgu  
Дата: 20.11.20 02:13
Оценка: -1
Кто такие говнокодеры -- понятно, согласно определению, это все авторы чужого кода. Лично я даже на собственный код смотрю, как на говно. А бывает ли наоборот, когда чей-то код приводит в восторг? Для такого случая я даже не знаю термина, пока придумал "нектарокодеры". "Крутые программисты" через одного -- тот написал продукт, который теперь все подпирают, тот работал в "Гугле", а этот просто ходит с важным видом. Но их творчество при ближайщем рассмотрении воняет даже для заболевшего ковидом. Встречается код просто чистый, обычно автоматически сгенерированный, но без всяких признаков гениальности.

Может вам попадался код-песня? И как нектарокодеры правильно называются?
Re: Нектарокодеры
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 20.11.20 02:23
Оценка:
Здравствуйте, mgu, Вы писали:

мой код — нектар, да
Маньяк Робокряк колесит по городу
Re: Нектарокодеры
От: sergey2b ЮАР  
Дата: 20.11.20 02:26
Оценка: +5
Здравствуйте, mgu, Вы писали:

я видел хорошие примеры кода
Re[2]: Нектарокодеры
От: Mur1can США  
Дата: 20.11.20 04:09
Оценка:
Здравствуйте, sergey2b, Вы писали:

S>Здравствуйте, mgu, Вы писали:


S>я видел хорошие примеры кода


типа зиг AI?
Коплю на ланцер
Re: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 20.11.20 06:00
Оценка: +1
mgu>Кто такие говнокодеры -- понятно, согласно определению, это все авторы чужого кода.

Похоже, что это определение из прошлого века. Тогда применение VCS на проектах было редким делом, особенно в маленьких компаниях. Но в 2000-х, после прихода бесплатных Svn, git и Hg на замену RCS/CVS/Perfoce/SourceSafe/BitKeeper, ситуация принципиально поменялась. Так что сейчас у любого говнокода есть не только имя и фамилия, но и дата рождения, и детально задокументированная история взросления.

mgu>Лично я даже на собственный код смотрю, как на говно.


Так в ИТ сейчас полно левых людей, в том числе и криворуких.

mgu>Может вам попадался код-песня?


Песня не песня, но когда приходилось запускать шаловливые ручки в потроха плюсовых библиотек ACE и POCO, то впечатления были хорошими.
Re[2]: Нектарокодеры
От: Skorodum Россия  
Дата: 20.11.20 08:59
Оценка:
Здравствуйте, Marty, Вы писали:

M>мой код — нектар, да

Дай понюхать
Re[2]: Нектарокодеры
От: mgu  
Дата: 20.11.20 16:13
Оценка:
Здравствуйте, so5team, Вы писали:

mgu>>Кто такие говнокодеры -- понятно, согласно определению, это все авторы чужого кода.


S>Похоже, что это определение из прошлого века.


А как сейчас называется это явление?

S>Тогда применение VCS на проектах было редким делом, особенно в маленьких компаниях. Но в 2000-х, после прихода бесплатных Svn, git и Hg на замену RCS/CVS/Perfoce/SourceSafe/BitKeeper, ситуация принципиально поменялась. Так что сейчас у любого говнокода есть не только имя и фамилия, но и дата рождения, и детально задокументированная история взросления.


Но это не делает такой код конфеткой.

mgu>>Лично я даже на собственный код смотрю, как на говно.


S>Так в ИТ сейчас полно левых людей, в том числе и криворуких.


Раньше было больше -- программистов не готовили в вузах.

mgu>>Может вам попадался код-песня?


S>Песня не песня, но когда приходилось запускать шаловливые ручки в потроха плюсовых библиотек ACE и POCO, то впечатления были хорошими.


У меня как раз от кода библиотек (разумеется, тех, которые приходилось нюхать) самые отвратительные впечатления.
Re[3]: Нектарокодеры
От: mgu  
Дата: 20.11.20 16:14
Оценка:
Здравствуйте, Skorodum, Вы писали:

M>>мой код — нектар, да

S>Дай понюхать

Не даст -- обосрут же.
Re[3]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 20.11.20 17:12
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>А как сейчас называется это явление?


Явление? Да точно так же. Только теперь от авторства отказаться нельзя.

mgu>>>Лично я даже на собственный код смотрю, как на говно.


S>>Так в ИТ сейчас полно левых людей, в том числе и криворуких.


mgu>Раньше было больше -- программистов не готовили в вузах.


Вы не поверите, но их все еще там и готовят.

S>>Песня не песня, но когда приходилось запускать шаловливые ручки в потроха плюсовых библиотек ACE и POCO, то впечатления были хорошими.


mgu>У меня как раз от кода библиотек (разумеется, тех, которые приходилось нюхать) самые отвратительные впечатления.


Тут напрашивается один из двух вариантов: либо вам паталогически не везло, либо вы просто привыкли на все смотреть как на говно.
Re[4]: Нектарокодеры
От: mgu  
Дата: 20.11.20 19:10
Оценка:
Здравствуйте, so5team, Вы писали:

S>Тут напрашивается один из двух вариантов: либо вам паталогически не везло, либо вы просто привыкли на все смотреть как на говно.


Вот поэтому я и решил поинтересоваться, хочется хоть одним глазком посмотреть на прекрасный код, если он существует, конечно.
Re: Нектарокодеры
От: cppguard  
Дата: 20.11.20 21:58
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>Может вам попадался код-песня? И как нектарокодеры правильно называются?


Старые (до 2012) гугловские открытые проекты на Java — там неплохой код был, было чему поучиться.

Плохой и хороший код это абсолютно субъективные понятия. Например, на одном проекте руководитель считал мой код иногда плохим, потому что я не создавал переменную для каждого результата вызова функции. Ему это было нужно, потому что он пришёл из embedded и привык чуть что сразу запускать отладчик и тыкать watch-ем в переменные. Другой пример — Фабрис Беллар, его по праву считают гениальным программистом. Я тоже так считаю, но его код (я смотрел только тот, что на Си) далёк от корпоративных идеалов, и это логично — парень писал в одиночку и для себя. Третий пример — код Linux. Несмотря на деспотичность Линуса и всю систему проверок на этом проекте, всё равно можно встретить какую-то лютую дичь. Так что не существует никаких нектарокодеров. Идеальный код пишется бесконечно долго, поэтому в реальных задачах всегда есть сочетание хороших практик и говнокода, и, я думаю, настоящее искусство это найти идеальный баланс.
Re: Нектарокодеры
От: goto Россия  
Дата: 21.11.20 02:25
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>Может вам попадался код-песня? И как нектарокодеры правильно называются?


Есть же почти аксиома: весь другой код — г.

Если серьезно, то надо уточнять, какая песня? Рэп, диско, трэш-метал, джаз, опера? Да, все такие песни попадались.

А если говорить о коде-песне как гармонии и музыке небесных сфер, так он очень мало где нужен.
Re[2]: Нектарокодеры
От: mgu  
Дата: 21.11.20 03:47
Оценка:
Здравствуйте, cppguard, Вы писали:

C>Идеальный код пишется бесконечно долго, поэтому в реальных задачах всегда есть сочетание хороших практик и говнокода, и, я думаю, настоящее искусство это найти идеальный баланс.


Согласен на 146%. Однако помимо реальных задач есть и другие -- учебники, конкурсы, этюды, тестоые задания, примеры на Гитхабе. Понимаю, что этого добра как грязи, и я физически не могу просмотреть всё, но то, что попадалось, восторга не вызывало, "сало как сало".
Re[2]: Нектарокодеры
От: mgu  
Дата: 21.11.20 03:55
Оценка:
Здравствуйте, goto, Вы писали:

G>Есть же почти аксиома: весь другой код — г.


Ну, это скорее про случаи, когда у кого-то int, так сазать, short.

G>Если серьезно, то надо уточнять, какая песня? Рэп, диско, трэш-метал, джаз, опера? Да, все такие песни попадались.


Да без разницы. Помню, как как-то заворожило исполнение авангардного джаза, от которого меня обычно тошнит.

G>А если говорить о коде-песне как гармонии и музыке небесных сфер, так он очень мало где нужен.


А нужно говно? Пусть даже так, но хочется взглянуть на исключения.
Re[3]: Нектарокодеры
От: goto Россия  
Дата: 21.11.20 04:26
Оценка: +1
Здравствуйте, mgu, Вы писали:

mgu>А нужно говно? Пусть даже так, но хочется взглянуть на исключения.


Где-то между говном и нектаром занимает уверенную позицию сермяжный рабочий код. Он прекрасен по-своему.

Любование же кодом-нектаром требует одиночества подобно любованию веткой сакуры. Ибо есть закон мироздания: публичное рассматривание любого кода превращает его в говно.
Re[4]: Нектарокодеры
От: CreatorCray  
Дата: 21.11.20 05:42
Оценка: +3
Здравствуйте, goto, Вы писали:

G>Любование же кодом-нектаром требует одиночества подобно любованию веткой сакуры. Ибо есть закон мироздания: публичное рассматривание любого кода превращает его в говно.


Код имеет свойство оговневать со временем. Свой собственный код, который нравился десять лет назад сегодня выглядит говновато.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[5]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 21.11.20 09:02
Оценка: +2
Здравствуйте, mgu, Вы писали:

S>>Тут напрашивается один из двух вариантов: либо вам паталогически не везло, либо вы просто привыкли на все смотреть как на говно.


mgu>Вот поэтому я и решил поинтересоваться, хочется хоть одним глазком посмотреть на прекрасный код, если он существует, конечно.


Тут есть такая проблема: вы создали себе такую репутацию, что показывать вам что-то нет желания, т.к. вы весь из себя такой прожженый, познавший жизнь, видавший всякое и всяких, плюс с подвешенным языком и ярко выраженной язвительностью. В общем, тип, который может авторитетно обосрать все, что угодно.

Но есть другой вариант: покажите фрагмент своего кода, который вы сами воспринимаете как говнокод. А вам скажут действительно ли это говнокод или же вам просто так кажется. И, если вам именно что кажется, то проблема однозначно в вас. И это именно вы, в силу своего опыта, познания жизни, всякого увиденного и перепробованного (а может и/или каких-то других причин), неадекватно воспринимаете реальность и смотрите на все через измазанные говном очки.
Re[5]: Нектарокодеры
От: goto Россия  
Дата: 21.11.20 18:04
Оценка: :))
Здравствуйте, CreatorCray, Вы писали:

CC>Код имеет свойство оговневать со временем. Свой собственный код, который нравился десять лет назад сегодня выглядит говновато.


И да, и нет. Мне недавно товарищ скинул мой же собственный код почти 30-летней давности. Я тогда стремился писать предельно кратко и емко, оптимально по ресурсам. При взгляде на этот код по диагонали я ни хрена в нем не понял, но красоту не отметить не смог. И что особенно приятно, тот код на обезображен ни одним комментарием.

Потом, да, я научился кодить по-человечески, не эстетствовать и мусорить комментариями. К счастью, я практически весь свой старый код случайно продолбал.
Re[4]: Нектарокодеры
От: mgu  
Дата: 21.11.20 18:21
Оценка:
Здравствуйте, goto, Вы писали:

mgu>>А нужно говно? Пусть даже так, но хочется взглянуть на исключения.


G>Где-то между говном и нектаром занимает уверенную позицию сермяжный рабочий код. Он прекрасен по-своему.


Что в нём прекрасного? Да и должна ли быть таковой, скажем, лопата?

G>Любование же кодом-нектаром требует одиночества подобно любованию веткой сакуры. Ибо есть закон мироздания: публичное рассматривание любого кода превращает его в говно.


??? Мне просто хочется полюбоваться прекрасным.
Re[5]: Нектарокодеры
От: mgu  
Дата: 21.11.20 18:28
Оценка:
Здравствуйте, CreatorCray, Вы писали:

CC>Код имеет свойство оговневать со временем. Свой собственный код, который нравился десять лет назад сегодня выглядит говновато.


Не всем это понятно, т. к. необходимое условие -- писать код больше 10 лет.
Re[5]: Нектарокодеры
От: goto Россия  
Дата: 21.11.20 21:22
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>Что в нём прекрасного? Да и должна ли быть таковой, скажем, лопата?


Отношение польза/цена. Не должна, но может быть.

mgu>??? Мне просто хочется полюбоваться прекрасным.


Найди или напиши и любуйся. Частный случай: получи образец прекрасного от непререкаемого для тебя авторитета и любуйся. Не делись с тем, для кого ты сам не являешься непререкаемым авторитетом. Прекрасное относительно, следовательно, хрупко.
Re[6]: Нектарокодеры
От: CreatorCray  
Дата: 21.11.20 22:03
Оценка: +2
Здравствуйте, goto, Вы писали:

G>я ни хрена в нем не понял, но красоту не отметить не смог.

Взаимоисключающие параметры.
Не, ну можно конечно код оформить в виде котика, но к красоте кода это будет иметь весьма отдалённое отношение.
... << RSDN@Home 1.3.110 alpha 5 rev. 62>>
Re[6]: Нектарокодеры
От: mgu  
Дата: 21.11.20 23:21
Оценка: :)
Здравствуйте, so5team, Вы писали:

mgu>>Вот поэтому я и решил поинтересоваться, хочется хоть одним глазком посмотреть на прекрасный код, если он существует, конечно.


S>Тут есть такая проблема: вы создали себе такую репутацию, что показывать вам что-то нет желания, т.к. вы весь из себя такой прожженый, познавший жизнь, видавший всякое и всяких, плюс с подвешенным языком и ярко выраженной язвительностью. В общем, тип, который может авторитетно обосрать все, что угодно.


Ну вот, всё скатилось к переходу на личности. Надеюсь, что всё-таки обо мне сложилось впечателние, что я уже взрослый мальчик, и у меня нет позывов самоутверждаться за счёт обсирания других. И опять же, я же не прошу выкладывать чей-то личный код.

S>Но есть другой вариант: покажите фрагмент своего кода, который вы сами воспринимаете как говнокод. А вам скажут действительно ли это говнокод или же вам просто так кажется. И, если вам именно что кажется, то проблема однозначно в вас. И это именно вы, в силу своего опыта, познания жизни, всякого увиденного и перепробованного (а может и/или каких-то других причин), неадекватно воспринимаете реальность и смотрите на все через измазанные говном очки.


Мне непонятна ваша логика. Если я выложу реальное дерьмо, то говнокодеры его похвалят -- всё нормально, всё, как у них. Нектарокодеры же назовут вещи своими именами. А если последних не найдётся, то я неадекват? А если я выложу конфетку, то говнокодеры изойдут на жидкие и твёрдые комментарии, мастера похвалят, но я-то всё равно понимаю, что можно сделать значительно лучше, вот только пока не знвю как. Стало быть, у меня не переизбыток квалификации, а просто измазанные очки?
Re[6]: Нектарокодеры
От: mgu  
Дата: 21.11.20 23:34
Оценка:
Здравствуйте, goto, Вы писали:

G>И да, и нет. Мне недавно товарищ скинул мой же собственный код почти 30-летней давности. Я тогда стремился писать предельно кратко и емко, оптимально по ресурсам. При взгляде на этот код по диагонали я ни хрена в нем не понял, но красоту не отметить не смог. И что особенно приятно, тот код на обезображен ни одним комментарием.


Покажите этот код-то?

G>Потом, да, я научился кодить по-человечески, не эстетствовать и мусорить комментариями. К счастью, я практически весь свой старый код случайно продолбал.


Помню, как в начале 2000-х программирование захлестнула эпидемия комментирования: какой-то действительный член заявил, что нужно комментировать каждую(!) строку кода, и во всех обезьянниках закипела работа. Года через два тот понос завершился и началась золотуха самообъясняющего (self-explanatory) кода. А я лично за кислотно-щелочной баланс.
Re: Нектарокодеры
От: diez_p  
Дата: 22.11.20 00:43
Оценка: +1
Здравствуйте, mgu, Вы писали:

mgu>Кто такие говнокодеры -- понятно, согласно определению, это все авторы чужого кода. Лично я даже на собственный код смотрю, как на говно. А бывает ли наоборот, когда чей-то код приводит в восторг? Для такого случая я даже не знаю термина, пока придумал "нектарокодеры". "Крутые программисты" через одного -- тот написал продукт, который теперь все подпирают, тот работал в "Гугле", а этот просто ходит с важным видом. Но их творчество при ближайщем рассмотрении воняет даже для заболевшего ковидом. Встречается код просто чистый, обычно автоматически сгенерированный, но без всяких признаков гениальности.


mgu>Может вам попадался код-песня? И как нектарокодеры правильно называются?


Хороший код видел, были общие вопросы, из серии а почему выбрали именно такой путь решения. Но в целом код, который читается как книга — видел.
Re[7]: Нектарокодеры
От: goto Россия  
Дата: 22.11.20 01:01
Оценка:
Здравствуйте, CreatorCray, Вы писали:

G>>я ни хрена в нем не понял, но красоту не отметить не смог.

CC>Взаимоисключающие параметры.

Не совсем так. Я же знаю, что это за код. Это полнофункциональная графическая либа для визуализации данных с поддержкой кучи всего. Кода там 68к. Мне нравится. Это субъективно.
Re[7]: Нектарокодеры
От: goto Россия  
Дата: 22.11.20 01:13
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>Покажите этот код-то?


Я же не эксгибиционист и не мазохист. Вдруг мне компетентно объяснят, что мой код говно? Тогда все идеалы юности — коту под хвост. Не будем тревожить прошлое.

mgu>Помню, как в начале 2000-х программирование захлестнула эпидемия комментирования: какой-то действительный член заявил, что нужно комментировать каждую(!) строку кода, и во всех обезьянниках закипела работа. Года через два тот понос завершился и началась золотуха самообъясняющего (self-explanatory) кода. А я лично за кислотно-щелочной баланс.


В давние золотые времена програмирования ходили такие слухи:
— в развитых странах платили сдельно по строчкам кода. Речь о Фортране. Комментарии — это тоже строчки;
— был распространен стандарт: в среднем требовали 1 камент на 5 операторов;
— и к слову, хорошей производительностью программиста считалось в среднем 8 строчек в день.
Речь о мэнфреймах, конечно.
Re[3]: Нектарокодеры
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 22.11.20 01:14
Оценка: +1 :))) :)))
Здравствуйте, Skorodum, Вы писали:

M>>мой код — нектар, да

S>Дай понюхать

Лови

http://files.rsdn.org/2511/IV.CPP
  Скрытый текст
//////////////////////////////////////////////////////////////////////////////
//  Module Name:  iv.cpp
//  Programmer:   Alex Martinov, 2:5030/601.11fidonet.org
//  Description:  Increase version utility
//  Date:         15-06-00
//  Last Change:  15-06-00
//////////////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <stdlib.h>
#include <io.h>
#include <conio.h>
#include <fcntl.h>
#include <sys\stat.h>
#include <string.h>
#include <errno.h>
#include <dir.h>
#include <ctype.h>


#define BUFFER_SIZE 4096


unsigned char buf[BUFFER_SIZE];


int op_q = 0;
int help = 0;
int setval = 0;
int backup = 0;
long valforset = 0;


char *files[2] = { NULL, NULL };

unsigned char StringBuf[512];
char TempName[MAXPATH];



void print_help(void);
void print_copyr(void);





int main (int argc, char* argv[])
{
 char *p;
 int fc = 0;

 int ret_zero = 0;

 strcpy(StringBuf,"");
 strcpy(TempName,"$$IVXXXXXX");

 int i;
 // read command-line configuration
 for (i=1; i<argc; i++)
     {
      p=argv[i];
      if (*p=='/' || *p=='-')
         {
          p++;
          switch(*p){
            case 'h':
            case '?': help = 1; break;
            case 'q': op_q = 1; break;
            case 's': strcpy(StringBuf,(++p)--);
                      break;
            case 'v': valforset = atol((++p)--);
                      setval = 1;
                      break;
            case 'b': backup = 1;
                      break;
        case 'z': ret_zero = 1;
                      break;
            default:  print_copyr();
                      printf("Invalid key: %s\n",--p);
                      print_help();
                      return 0;
          };
         }
      else
         {
          if (fc<2)
             files[fc++] = argv[i];
         }
     }

 if (help)
    {
     print_copyr();
     print_help();
     return 0;
    }

 if (!op_q)
    {
     print_copyr();
    }

 if (files[0]==NULL)
    {
     if (op_q) print_copyr();
     printf("Missing input file name\n");
     print_help();
     return 0;
    }

 if (strlen(StringBuf)==0)
    {
     if (op_q) print_copyr();
     printf("Missing increasing string\n");
     print_help();
     return 0;
    }


 int handle = open(files[0],O_BINARY|O_RDONLY);
 if (handle<0)
    {
     if (op_q) print_copyr();
     printf("Can't open input file: %s\n",files[0]);
     switch(errno)
        {
         case ENOENT: printf("%s\n","No such file or directory"); break;
         case EMFILE: printf("%s\n","Too many open files"); break;
         case EACCES: printf("%s\n","Permission denied"); break;
         case EINVACC: printf("%s\n","Invalid access code"); break;
        };
     return 0;
    }

 mktemp(TempName);
 int outhandle;

 if (!strcmp(files[0],files[1])) // source == destination
    {
     files[1] = NULL;
    }

 if (files[1]==NULL)
    outhandle = open(TempName,O_RDWR|O_CREAT|O_BINARY,S_IREAD|S_IWRITE);
 else
    outhandle = open(files[1],O_RDWR|O_CREAT|O_BINARY,S_IREAD|S_IWRITE);

 if (outhandle<0)
    {
     if (op_q) print_copyr();
     printf("Can't open output file: %s\n",(files[1]==NULL ? TempName : files[1]));
     switch(errno)
        {
         case ENOENT: printf("%s\n","No such file or directory"); break;
         case EMFILE: printf("%s\n","Too many open files"); break;
         case EACCES: printf("%s\n","Permission denied"); break;
         case EINVACC: printf("%s\n","Invalid access code"); break;
        };
     close(handle);
     return 0;
    }

 FILE *fin = fdopen(handle, "rb");
 if (fin==NULL)
    {
     if (op_q) print_copyr();
     printf("fdopen failed\n");
    }


 char *ptr = fgets((char*)buf, BUFFER_SIZE, fin);
 char *end_var;
 char numbuf[64];
 long int val;
 int occurence = 0;
 char wschar = ' ';
 while(ptr!=NULL)
      {
       end_var = strstr((char*)buf, (char*)StringBuf);
       if (end_var!=NULL)
          {
           occurence++;
           end_var += strlen(StringBuf);
           int bsize = end_var - buf;
           write(outhandle,buf,bsize); // save the begin of string

           if (isspace(*end_var) || !*end_var)
              {
               write(outhandle,&wschar,1); //optionaly add whitespaces
               if (*end_var) end_var++;
              }

           val = atol(end_var);
           while (*end_var && isdigit(*end_var)) end_var++; // scan for number end
           if (setval)
              {
               val = valforset;
              }
           else
              {
               val++; // this line is most significant
              }

           ltoa(val, numbuf, 10); // convert new num to string
           write(outhandle,numbuf,strlen(numbuf)); // writes it to file
           write(outhandle,end_var,strlen(end_var)); // write end to file
          }
       else
          {
           write(outhandle,buf,strlen(buf));
          }
       ptr = fgets((char*)buf, BUFFER_SIZE, fin);
      }
 fclose(fin);
 close(outhandle);

 if (!op_q)
    {
     printf("Found %d occurence of string '%s' in file '%s'\n",occurence,StringBuf,files[0]);
    }


 if (files[1]==NULL)
    { // if source == destination
     if (backup)
        {
         char *point;
         char backupbuf[MAXPATH];
         strcpy(backupbuf,files[0]);
         point = strrchr(backupbuf,'.');
         if (point!=NULL) // found extention delimiter
            {
             *point = 0;
             strcat(backupbuf,".bak"); // generate backup file name
             unlink(backupbuf); // remove prev bak
             rename(files[0],backupbuf); // create backup copy
            }
        }
     else
        {
         unlink(files[0]);  //remove source
        }
     rename(TempName, files[0]);  // rename temporary file
     unlink(TempName); // remove temp
    }



 if (ret_zero) return 0;
 return val;
}



void print_copyr(void)
{
 char *prgname_str = "Increase Version ver. 2.0\n";
 char *copyright_str = "(c)1999-2000 by Alex Martinov, 2:5030/601.11fidonet.org\n";
 printf("%s%s",prgname_str,copyright_str);
}


void print_help(void)
{
 char *h1 = " Usage: ver [options] input_file [output_file]\n\
     options:  -h,-?      ('/' is also allowed)\n\
                          prints this help screen.\n\
               -sstr      str - string for increase it's number.\n\
               -vN        force set value to N.\n\
           -b         create backup file (used only if source==destination).\n\
           -z         always return nul.\n\
               -q         operate quetly.\n";

 char *h2 = "     input_file  - file, which contain number for increase.\n\
     output_file - file for save results.\n";

 printf("%s%s",h1,h2);

}
Маньяк Робокряк колесит по городу
Re[7]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 22.11.20 06:39
Оценка: +1
Здравствуйте, mgu, Вы писали:

mgu>Ну вот, всё скатилось к переходу на личности.


А как иначе если вы решили на публике обсудить свою проблему?

mgu>Надеюсь


Надейтесь. Но правда, очевидно, глаза вам все-таки колет.

mgu>Мне непонятна ваша логика.


А вы посмотрите с другой стороны: вам покажут нормальный код, а вы его обосрете, мол говно это.

Но еще более верояно, что вам укажут, где посмотреть нормальный код, а вы даже и не заглянете туда. Что, собственно, уже и произошло (к слову о репутации).

mgu>но я-то всё равно понимаю, что можно сделать значительно лучше, вот только пока не знвю как. Стало быть, у меня не переизбыток квалификации, а просто измазанные очки?


Если не понимаете, как сделать лучше, то даже о достаточной квалификации рано говорить, не то что о переизбытке оной. Так что версия про очки получает дополнительные подтверждения.
Re[4]: Нектарокодеры
От: Marty Пират https://www.youtube.com/channel/UChp5PpQ6T4-93HbNF-8vSYg
Дата: 22.11.20 22:54
Оценка:
Здравствуйте, Marty, Вы писали:

Чё ржоте, падонки?

Хотите сказать, что код — гавно? И что вы на первом году жизни лучше писали?

ЗЫ Я не обиделсо, если чо
Маньяк Робокряк колесит по городу
Re[5]: Нектарокодеры
От: Skorodum Россия  
Дата: 23.11.20 08:31
Оценка: :))
Здравствуйте, Marty, Вы писали:

M>Здравствуйте, Marty, Вы писали:


M>Чё ржоте, падонки?

2000-й год? Да ты перепутал "Нектарокодеры" с "некрокодер"
Re[8]: Нектарокодеры
От: mgu  
Дата: 24.11.20 01:30
Оценка:
Здравствуйте, goto, Вы писали:

mgu>>Покажите этот код-то?


G>Я же не эксгибиционист и не мазохист. Вдруг мне компетентно объяснят, что мой код говно? Тогда все идеалы юности — коту под хвост. Не будем тревожить прошлое.


Вам шашечки идеалы или ехать?

mgu>>Помню, как в начале 2000-х программирование захлестнула эпидемия комментирования: какой-то действительный член заявил, что нужно комментировать каждую(!) строку кода, и во всех обезьянниках закипела работа. Года через два тот понос завершился и началась золотуха самообъясняющего (self-explanatory) кода. А я лично за кислотно-щелочной баланс.


G>В давние золотые времена програмирования ходили такие слухи:

G>- в развитых странах платили сдельно по строчкам кода. Речь о Фортране. Комментарии — это тоже строчки;
G>- был распространен стандарт: в среднем требовали 1 камент на 5 операторов;
G>- и к слову, хорошей производительностью программиста считалось в среднем 8 строчек в день.
G>Речь о мэнфреймах, конечно.

А зато сейчас (пусть меня поправят, если что не так):

— оценивают работу ко количеству завершённых заданий; подпорки -- это тоже решение, которое порождает новые старые проблемы;
— на одну строку кода приходится 5 из относящейся к заданию переписки;
— понятия хорошей производительности программиста не существует: таинство гибкой методологии подразумевает железобетонный список задач в рамках забега.
Re[8]: Нектарокодеры
От: mgu  
Дата: 24.11.20 02:36
Оценка:
Здравствуйте, so5team, Вы писали:

mgu>>Ну вот, всё скатилось к переходу на личности.


S>А как иначе если вы решили на публике обсудить свою проблему?


Свою? Сразу так? Я-то пытаюсь выяснить, только ли моя эта проблема.

mgu>>Надеюсь


S>Надейтесь. Но правда, очевидно, глаза вам все-таки колет.


???

mgu>>Мне непонятна ваша логика.


S>А вы посмотрите с другой стороны: вам покажут нормальный код, а вы его обосрете, мол говно это.


Для меня это не самоцель. А насчёт нормальности кода -- кому и кобыла невеста.

S>Но еще более верояно, что вам укажут, где посмотреть нормальный код, а вы даже и не заглянете туда. Что, собственно, уже и произошло (к слову о репутации).


В чём заключалось указание? Это: "Песня не песня, но когда приходилось запускать шаловливые ручки в потроха плюсовых библиотек ACE и POCO, то впечатления были хорошими"? Библиотеки могут содержать десятки файлов, хороших и разных, вы предлагаете угадать тот код, который вам понравился?

mgu>>но я-то всё равно понимаю, что можно сделать значительно лучше, вот только пока не знвю как. Стало быть, у меня не переизбыток квалификации, а просто измазанные очки?


S>Если не понимаете, как сделать лучше, то даже о достаточной квалификации рано говорить, не то что о переизбытке оной. Так что версия про очки получает дополнительные подтверждения.


Вы упустили ключевое слово "пока". Да, я не могу с ходу выдать блестящее решение.
Re[6]: Нектарокодеры
От: mgu  
Дата: 24.11.20 02:53
Оценка:
Здравствуйте, goto, Вы писали:

mgu>>Что в нём прекрасного? Да и должна ли быть таковой, скажем, лопата?


G>Отношение польза/цена. Не должна, но может быть.


mgu>>??? Мне просто хочется полюбоваться прекрасным.


G>Найди или напиши и любуйся.


Нарциссизмом не страдаю.

G>Частный случай: получи образец прекрасного от непререкаемого для тебя авторитета и любуйся.


Не сотворяю себе кумиров.

G>Не делись с тем, для кого ты сам не являешься непререкаемым авторитетом.


Тогда какой смысл?

G>Прекрасное относительно, следовательно, хрупко.


Относительно. Но почему хрупко?
Re[4]: Нектарокодеры
От: mgu  
Дата: 24.11.20 03:04
Оценка:
Здравствуйте, Marty, Вы писали:

M>>>мой код — нектар, да

S>>Дай понюхать

M>Лови


С пивом потянет, но без блеска (а может для данной задачи и не надо). Вспомнился Мыщьх с его калькулятором в одну строку (без Eval).

Дожили: матёрые программисты стыдятся показать код, даже необязательно свой. Только хихикают в оценках.
Re[5]: Нектарокодеры
От: mgu  
Дата: 24.11.20 03:07
Оценка:
Здравствуйте, Marty, Вы писали:

M>Чё ржоте, падонки?


M>Хотите сказать, что код — гавно? И что вы на первом году жизни лучше писали?


Хотят, но не к чему (кроме св. прп. скобок) прикопаться.

M>ЗЫ Я не обиделсо, если чо


Мужык!
Re[6]: Нектарокодеры
От: mgu  
Дата: 24.11.20 03:11
Оценка:
Здравствуйте, Skorodum, Вы писали:

S>2000-й год?


Ну и что?
Re[9]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 24.11.20 06:30
Оценка:
Здравствуйте, mgu, Вы писали:

S>>А как иначе если вы решили на публике обсудить свою проблему?


mgu>Свою? Сразу так? Я-то пытаюсь выяснить, только ли моя эта проблема.


Да, вашу. Пока не видно, чтобы она интересовала еще кого-то. Так что это именно что ваша проблема и вы решили обсудить ее публично.

S>>Надейтесь. Но правда, очевидно, глаза вам все-таки колет.


mgu>???


Ок, давайте на пальцах.

Раз: "вы создали себе такую репутацию, что показывать вам что-то нет желания, т.к. вы весь из себя такой прожженый, познавший жизнь, видавший всякое и всяких, плюс с подвешенным языком и ярко выраженной язвительностью. В общем, тип, который может авторитетно обосрать все, что угодно."

По крайней мере у одного из участников форума вы сформировали именно такое впечатление о себе.

Два: "Надеюсь, что всё-таки обо мне сложилось впечателние, что я уже взрослый мальчик, и у меня нет позывов самоутверждаться за счёт обсирания других."

Вы надеетсь, что впечатление сложилось другое.

Ну надейтесь, этого вам никто запретить не может. Но, очевидно, что факт существования такого впечатления вы принять (да и признать) не можете. Так что правда глаза колет.

В таком формате понятнее или вопросы еще остались?

mgu>Для меня это не самоцель. А насчёт нормальности кода -- кому и кобыла невеста.


В такой формулировке общение с вами вообще бессмыслено, т.к. подразумевается чистый субъективизм: вы на любой код оставляете за собой право сказать "кому и кобыла невеста".

mgu>В чём заключалось указание? Это: "Песня не песня, но когда приходилось запускать шаловливые ручки в потроха плюсовых библиотек ACE и POCO, то впечатления были хорошими"? Библиотеки могут содержать десятки файлов, хороших и разных, вы предлагаете угадать тот код, который вам понравился?


Это было не указание, а информация о том, что в мире есть код, который конретный участник обсуждения считает нормальным. И да, библиотеки большие, заглядывать доводилось в разные куски, и всегда впечатление было положительным. Так что просмотрите файлов 5-10 из каждой из них, вряд ли вы везде будете вляпываться в говно.

mgu>Вы упустили ключевое слово "пока". Да, я не могу с ходу выдать блестящее решение.


Да не вопрос. Пока даже о достаточной квалификации рано говорить, не то, что о переизбытке оной.

Лирическое отступление: код приходится писать в условиях ограниченных ресурсов (даже если это код для какого-нибудь OpenSource-ного pet-project-а, не говоря уже о коде, который пишется за деньги для конкретного заказчника), поэтому квалификация определяется тем, насколько хороший код человек выдает не имея возможности курить бамбук месяцами и рефакторить куски кода до полного удовлетворения. Не можете написать так, чтобы написанное не вызваало у вас отторжения? Может у вас и правда очки говном забрызганы, на которое вы в своих топиках в форуме job так рьяно исходите.
Re[5]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 24.11.20 06:31
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>Дожили: матёрые программисты стыдятся показать код, даже необязательно свой.


Попробуйте начать с себя.
Re[10]: Нектарокодеры
От: mgu  
Дата: 25.11.20 04:18
Оценка:
Здравствуйте, so5team, Вы писали:

S>>>А как иначе если вы решили на публике обсудить свою проблему?


mgu>>Свою? Сразу так? Я-то пытаюсь выяснить, только ли моя эта проблема.


S>Да, вашу. Пока не видно, чтобы она интересовала еще кого-то. Так что это именно что ваша проблема и вы решили обсудить ее публично.


И это печально. Странно, что программистов не интересует блестящий код. Если проблему не замечают, это не значит, что её нет.

S>Ок, давайте на пальцах.


S>Раз: "вы создали себе такую репутацию, что показывать вам что-то нет желания, т.к. вы весь из себя такой прожженый, познавший жизнь, видавший всякое и всяких, плюс с подвешенным языком и ярко выраженной язвительностью. В общем, тип, который может авторитетно обосрать все, что угодно."


S>По крайней мере у одного из участников форума вы сформировали именно такое впечатление о себе.


S>Два: "Надеюсь, что всё-таки обо мне сложилось впечателние, что я уже взрослый мальчик, и у меня нет позывов самоутверждаться за счёт обсирания других."


S>Вы надеетсь, что впечатление сложилось другое.


S>Ну надейтесь, этого вам никто запретить не может. Но, очевидно, что факт существования такого впечатления вы принять (да и признать) не можете. Так что правда глаза колет.


S>В таком формате понятнее или вопросы еще остались?


Одно другому не противоречит, возможно, что я и могу обосрать что угодно, аот только нет такой потребности.

mgu>>Для меня это не самоцель. А насчёт нормальности кода -- кому и кобыла невеста.


S>В такой формулировке общение с вами вообще бессмыслено, т.к. подразумевается чистый субъективизм: вы на любой код оставляете за собой право сказать "кому и кобыла невеста".


Я и за другими оставляю такое право.

mgu>>В чём заключалось указание? Это: "Песня не песня, но когда приходилось запускать шаловливые ручки в потроха плюсовых библиотек ACE и POCO, то впечатления были хорошими"? Библиотеки могут содержать десятки файлов, хороших и разных, вы предлагаете угадать тот код, который вам понравился?


S>Это было не указание, а информация о том, что в мире есть код, который конретный участник обсуждения считает нормальным. И да, библиотеки большие, заглядывать доводилось в разные куски, и всегда впечатление было положительным. Так что просмотрите файлов 5-10 из каждой из них, вряд ли вы везде будете вляпываться в говно.


Так посмотрел же, сало как сало, ничего выдающегося.

mgu>>Вы упустили ключевое слово "пока". Да, я не могу с ходу выдать блестящее решение.


S>Да не вопрос. Пока даже о достаточной квалификации рано говорить, не то, что о переизбытке оной.


S>Лирическое отступление: код приходится писать в условиях ограниченных ресурсов (даже если это код для какого-нибудь OpenSource-ного pet-project-а, не говоря уже о коде, который пишется за деньги для конкретного заказчника), поэтому квалификация определяется тем, насколько хороший код человек выдает не имея возможности курить бамбук месяцами и рефакторить куски кода до полного удовлетворения. Не можете написать так, чтобы написанное не вызваало у вас отторжения?


У меня несколько другая сфера деятельности: я обычно не намолачиваю код, а делаю так, чтобы он быстро и надёжно работал. Время, конечно, ограничено, поэтому я успеваю пройти только часть пути, заказчика уже устраивает результат, а меня -- нет.

S>Может у вас и правда очки говном забрызганы, на которое вы в своих топиках в форуме job так рьяно исходите.


Вполне возможно, ведь мне приходится его разгребать.
Re[6]: Нектарокодеры
От: mgu  
Дата: 25.11.20 04:19
Оценка:
Здравствуйте, so5team, Вы писали:

mgu>>Дожили: матёрые программисты стыдятся показать код, даже необязательно свой.


S>Попробуйте начать с себя.


Мосье желает посмотреть на говно?
Re[7]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 25.11.20 06:41
Оценка:
Здравствуйте, mgu, Вы писали:

S>>Попробуйте начать с себя.


mgu>Мосье желает посмотреть на говно?


Определить адекватность ваших оценок.
Re[11]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 25.11.20 07:04
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>И это печально. Странно, что программистов не интересует блестящий код. Если проблему не замечают, это не значит, что её нет.


А "блестящий код" -- это не синоним ли "сферического коня в вакууме"?

ИМХО, код можно поделить на следующие категории:

* плохой код. Не делает то, что от него требуется. Либо делает, но только когда повезет. Либо делает, но вообще не отвечает поставленным требованиям (по быстродействию, потреблению ресурсов, использованию сторонних библиотек и т.д.). Плохой код подлежит замене. По определению.

* так себе код. Делает то, что требуется. И более-менее в рамках требований. Но в котором есть хорошо заметные и объективные проблемы: игнорирование ошибок, злоупотребление копипастой, глубокие иерархии наследования, сильная связность, паттерны ради паттернов, и т.д., и т.п. Т.е. есть вполне понятные пути улучшения кода. Показанный в этой теме код от Marty попадает в эту категорию (он работает, но написан с использованием глобальных переменных и без контроля успешности выполняемых операций, поэтому понятно, как этот код можно улучшить). Так себе код может жить в проекте сколь угодно долго, накапливая технический долг. Ибо обосновать необходимость его улучшения получается далеко не всегда.

* нормальный (хороший код). Делает то, что требуется. Не содержит явных косяков. Понятен. Оставляет возможность развития со временем.

Ну и есть говнокод -- это нечто, что хз как и почему работает, что хз как поддерживать и развивать. И в который никто не хочет вляпываться.

При этом по мере развития проекта какие-то его куски могут переходить через все перечисленные выше градации (в любом направлении).

UPD. Люди с разным уровнем знаний, длиной опыта и шириной кругозора могут отнести один и тот же код к совершенно разным категориям.

Что такое блестящий код -- хз.

Еще можно понять, что такое "блестящее решение". Например, когда неожиданно применяется какой-то подход/алгоритм/структура данных для того, чтобы оптимально вписаться в имеющиеся ограничения. Решение, которое вызывает вау-эффект, которое не лежит на поверхности. Скажем, когда ради экономии каждого байта памяти список строят на XOR-е указателей. Только вот не обязательно "блестящее решение" будет воплощено в жизнь даже в виде так себе кода.

mgu>Так посмотрел же, сало как сало, ничего выдающегося.


Что означает термин "сало"?

mgu>У меня несколько другая сфера деятельности: я обычно не намолачиваю код, а делаю так, чтобы он быстро и надёжно работал. Время, конечно, ограничено, поэтому я успеваю пройти только часть пути, заказчика уже устраивает результат, а меня -- нет.


Ну прям униальная специализация. Если вас не устраивает то, что вы сами делаете, то это ваши личные заморочки. Которые, возможно, следует решать с помощью специалистов из области психиатрии.
Отредактировано 25.11.2020 7:17 so5team . Предыдущая версия .
Re[12]: Нектарокодеры
От: kaa.python Ниоткуда РСДН профессионально мёртв и завален ватой.
Дата: 25.11.20 07:15
Оценка: :)
Здравствуйте, so5team, Вы писали:

mgu>>Так посмотрел же, сало как сало, ничего выдающегося.


S>Что означает термин "сало"?


Высококачественный жир тролля
Re[2]: Нектарокодеры
От: Dym On Россия  
Дата: 25.11.20 11:15
Оценка:
Здравствуйте, sergey2b, Вы писали:

S>я видел хорошие примеры кода

Вот всегда так, кто-то видел, кто-то слышал, кто-то знает того, кто знает того, кто знает того, кто видел издалека того, кто пишет хороший код. Похоже на легенду: где-то далеко-далеко, на древнем дубе, висит ларец на урановых цепях, в ларце заяц, в зайце утка, в утке яйцо, а в яйце в заброшенном дата-центре есть комната, а в ней сервер, в нем флешка с идеальным кодом.
Счастье — это Glück!
Re: Нектарокодеры
От: L_G Россия  
Дата: 25.11.20 14:17
Оценка:
Вспомнилось: проскакивала такая статейка (перевод) — "Исключительная красота исходного кода Doom 3"
https://habr.com/ru/post/166113/
Правда, я не плюсовик и не игродел, так что даже не читал.
Но, по крайне мере, кого-то когда-то какой-то код в восторг приводил — бывало.

Мне же кажется, что код может сильно впечатлить, только если увидишь в нем что-то новое и интересное, доселе неизведанное, если можно что-то почерпнуть в нем для себя. Получается, вероятность получить такие впечатления для программиста больше на заре его карьеры, а с приобретением знаний и опыта эта вероятность всё меньше и меньше.
Каша в голове — пища для ума (с)
Отредактировано 25.11.2020 14:20 L_G . Предыдущая версия .
Re[8]: Нектарокодеры
От: mgu  
Дата: 26.11.20 04:18
Оценка:
Здравствуйте, so5team, Вы писали:

S>>>Попробуйте начать с себя.


mgu>>Мосье желает посмотреть на говно?


S>Определить адекватность ваших оценок.


Ну вот, например:

День рождения №2
Автор: mgu
Дата: 03.10.18


Код обычный, не знаю, что в нём можно улучшить. А вот пользовательский интерфейс -- полнейший шлак.
Re[12]: Нектарокодеры
От: mgu  
Дата: 26.11.20 04:37
Оценка:
Здравствуйте, so5team, Вы писали:

mgu>>И это печально. Странно, что программистов не интересует блестящий код. Если проблему не замечают, это не значит, что её нет.


S>А "блестящий код" -- это не синоним ли "сферического коня в вакууме"?


Ну, бывают же блестяшие стихи, хотя бы у Нашего Всего, хотя и у него много отходов.

S>ИМХО, код можно поделить на следующие категории:


S>* нормальный (хороший код). Делает то, что требуется. Не содержит явных косяков. Понятен. Оставляет возможность развития со временем.


S>Ну и есть говнокод -- это нечто, что хз как и почему работает, что хз как поддерживать и развивать. И в который никто не хочет вляпываться.


Хм... Получается, что такой код:

if (a)
  return true;
else
  return false;


...по вашей классификации нормальный, а по моей -- кусок кала.

S>UPD. Люди с разным уровнем знаний, длиной опыта и шириной кругозора могут отнести один и тот же код к совершенно разным категориям.

S>


Естественно!

S>Что такое блестящий код -- хз.


S>Еще можно понять, что такое "блестящее решение". Например, когда неожиданно применяется какой-то подход/алгоритм/структура данных для того, чтобы оптимально вписаться в имеющиеся ограничения. Решение, которое вызывает вау-эффект, которое не лежит на поверхности. Скажем, когда ради экономии каждого байта памяти список строят на XOR-е указателей. Только вот не обязательно "блестящее решение" будет воплощено в жизнь даже в виде так себе кода.


"Блестящий код" -- частный случай "блестящего решения". К последнему, например, может относиться использование встроенной конструкции вместо аналогичного велосипеда.

mgu>>Так посмотрел же, сало как сало, ничего выдающегося.


S>Что означает термин "сало"?


Из неполиткорректного анекдота:
https://anekdotovstreet.com/anekdot/letyat-v-samolete-negr-i-hohol-progolodalis/144/

S>Ну прям униальная специализация. Если вас не устраивает то, что вы сами делаете, то это ваши личные заморочки. Которые, возможно, следует решать с помощью специалистов из области психиатрии.


Н-да... Дожили.
Re[13]: Нектарокодеры
От: mgu  
Дата: 26.11.20 04:38
Оценка:
Здравствуйте, kaa.python, Вы писали:

mgu>>>Так посмотрел же, сало как сало, ничего выдающегося.


S>>Что означает термин "сало"?


KP>Высококачественный жир тролля


Курдючный!
Re[3]: Нектарокодеры
От: mgu  
Дата: 26.11.20 04:41
Оценка:
Здравствуйте, Dym On, Вы писали:

DO>Здравствуйте, sergey2b, Вы писали:


S>>я видел хорошие примеры кода

DO>Вот всегда так, кто-то видел, кто-то слышал, кто-то знает того, кто знает того, кто знает того, кто видел издалека того, кто пишет хороший код. Похоже на легенду: где-то далеко-далеко, на древнем дубе, висит ларец на урановых цепях, в ларце заяц, в зайце утка, в утке яйцо, а в яйце в заброшенном дата-центре есть комната, а в ней сервер, в нем флешка с идеальным кодом.

Да, чересчур много людей видели Ленина и дружили с Высоцким, однако они не мифические персонажи.
Re[2]: Нектарокодеры
От: mgu  
Дата: 26.11.20 04:46
Оценка:
Здравствуйте, L_G, Вы писали:

L_G>Мне же кажется, что код может сильно впечатлить, только если увидишь в нем что-то новое и интересное, доселе неизведанное, если можно что-то почерпнуть в нем для себя. Получается, вероятность получить такие впечатления для программиста больше на заре его карьеры, а с приобретением знаний и опыта эта вероятность всё меньше и меньше.


Вероятность ниже, зато какой восторг! Если сравнить с биологами: "О, трилобит, прямо как в учебнике!" или "Да это же недостающее звено в эволюции! И притом живёт в наше время!!!"
Re[9]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 26.11.20 06:16
Оценка:
Здравствуйте, mgu, Вы писали:

S>>Определить адекватность ваших оценок.


mgu>Ну вот, например:


mgu>День рождения №2
Автор: mgu
Дата: 03.10.18


mgu>Код обычный, не знаю, что в нём можно улучшить.


Да, код-то пованивает. И названия у пары переменных стремные, и смысл использования миллисекунд в этих расчетах ускользает, а никаких пояснений в коде нет. Не говоря уже о том, что сама суть существования поля "age" при наличии даты рождения ускользает. Уж не профессиональный ли вы говнокодер, батенька?
Re[13]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 26.11.20 06:28
Оценка: :)
Здравствуйте, mgu, Вы писали:

mgu>Ну, бывают же блестяшие стихи, хотя бы у Нашего Всего, хотя и у него много отходов.


Как минимум, к стихам не предъявляют требований быть однозначно воспринимаемыми и пригодными к дальнейшей модификации.

mgu>Хм... Получается, что такой код:


mgu>
mgu>if (a)
mgu>  return true;
mgu>else
mgu>  return false;
mgu>


mgu>...по вашей классификации нормальный,


По-моему здесь недостаточно данных для классификации этого фрагмента, а именно:

* на каком ЯП он написан;
* в каком контексте он употреблен;
* что за тип у a;
* какой code style и code guidelines используется в проекте.

В зависимости от ответов на эти вопросы данный фрагмент может быть как нормальным, так и подлежащим замене на что-то из нижеследующего перечня (в предположении, что это код на C++):
return a;

if (a)
  return status::in_progress;
else
  return status::completed;

if (a != 0) {
  return true;
}
else {
  return false;
}

return (a != 0);


mgu>а по моей -- кусок кала.


А вас нужно лечить.

mgu>"Блестящий код" -- частный случай "блестящего решения". К последнему, например, может относиться использование встроенной конструкции вместо аналогичного велосипеда.


Т.е. вот это блестящий код:
for(auto & t : threads) {
  deactivate(t);
}

а вот это уже нет:
for(threads_container::iterator it = threads.begin(), end = threads.end(); it != end; ++it) {
  deactivate(*it);
}

?

mgu>>>Так посмотрел же, сало как сало, ничего выдающегося.


S>>Что означает термин "сало"?


mgu>Из неполиткорректного анекдота:

mgu>https://anekdotovstreet.com/anekdot/letyat-v-samolete-negr-i-hohol-progolodalis/144/

Осталось загадкой, как содержание анекдота про жадность соотносится с качеством кода проектов ACE и POCO.
Re[10]: Нектарокодеры
От: mgu  
Дата: 26.11.20 23:13
Оценка:
Здравствуйте, so5team, Вы писали:

S>Да, код-то пованивает. И названия у пары переменных стремные, и смысл использования миллисекунд в этих расчетах ускользает, а никаких пояснений в коде нет. Не говоря уже о том, что сама суть существования поля "age" при наличии даты рождения ускользает. Уж не профессиональный ли вы говнокодер, батенька?


Очевидно же, что нет: у профессиональных говнокодеров всё на редкость тупо и понятно.
Re[11]: Нектарокодеры
От: so5team https://stiffstream.com
Дата: 27.11.20 06:10
Оценка:
Здравствуйте, mgu, Вы писали:

mgu>Очевидно же, что нет: у профессиональных говнокодеров всё на редкость тупо и понятно.


"на редкость тупо и понятно" -- это свойство промышленного кода на Java и Go. Тут же другой случай. И другой пациент.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.