Мой код образца 1995 года

Наводил порядок в папке с исходникаи, наткнулся на «шедевры»:

{*************************************************************************}
{********************** Function DeleteChar ******************************}
{*************************************************************************}
Function DeleteChar(PoleStr : String;
                    Ch      : Char    ) : String;
    { Убирает символы Ch из String`a PoleStr                              }
Var
  i,k : integer;
Begin
  k:=1;
  for i:=1 to Length(PoleStr) do
   begin
     if PoleStr[k] = Ch
      then Delete(PoleStr,k,1)
      else inc(k)
   end;{for i:=1 to Length(PoleStr) do}
  DeleteChar:=PoleStr;
End;{Function DeleteChar}

{*************************************************************************}
{************************ Function DateInv *******************************}
{*************************************************************************}
Function DateInv : String;
    { Возвращает Системную Дату в виде String.   Формат : ГГГГММДД        }
    { Специально для 'Уродских' Форматов, Например DBF(Тип Дата)          }
Var
 yy,mm,dd,ww : Word;
 sy,sm,sd    : String[8];
Begin
  GetDate(yy,mm,dd,ww);
  Str(yy:4,sy);
  Str(mm,sm);
  Str(dd,sd);
  if mm < 10
   then sm := '0' + sm;
  if dd < 10
   then sd := '0' + sd;
  DateInv:=sy+sm+sd;
End;{Function DateInv}

{*************************************************************************}
{*********************** Function StrComma *******************************}
{*************************************************************************}
Function StrComma(Nom         : Extended;
                  Digit,Comma : integer) : String;{ Перевод Числа В String}
   { Работает Аналогично Procedure Str(Nom:Digit:Comma,StrComma)          }
   { Плюс вставляет разделительные ',' (1,121,123,231.124)                }
Var
  PoleStr : String;
  MaxLen,i  : integer;
Begin
  MaxLen := Digit + (Digit div 3); {Ширина поля Digits с учетом ','}
  Str(Nom:-1:Comma,PoleStr);
  PoleStr:=InsertComma(PoleStr);
  MaxLen:=MaxLen-Length(PoleStr); {Сколько пробелов добавить}
  if MaxLen > 0 then
   begin
     for i:=1 to MaxLen do
      PoleStr := ' ' + PoleStr;
   end;{if Length(PoleStr) < MaxLen then}
  StrComma:=PoleStr;
End;{Function StrComma}

Отступы не по стандарту, зато коментарии и документацию я даже в «детстве» писал 🙂

 

Тесты на время

Хуже чем проверка знаний на время может быть разве что выдача тестов с неправильными ответами 🙂

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

Почему этой фигней до сих пор страдают люди, особенно в IT, мне не понятно.

Не делайте так!

P.S. Я обычно отказываюсь от прохождения такого, но настойчиво попросили… Результат — половина ответов «в молоко» 🙂

Англоязычный блог

Сделал англозычный блог на сабдомене blog.karpolan.com, буду перенесить туда только самое полезное или очень популярное.

Можете подписываться 🙂

Нашел не доделаный веб-сайт

Продлевал домены, обнаружил что у меня на DeepTown.com не доделаная поделка на WordPress. Я там когда-то тестировал всякие снипеты, кастомные типы постов, связи между ними…

В общем надо бы доделать, сейчас проверим как это все индексирутеся:

P.S. Какой только фигни у меня в загажниках не валяется…

Тестовое задание на React JS

Обычно я такой фигней не стардаю, но тут задачка интерсная и близкая к реальному миру.

Список ресторанов с разными вариантами фильтров и отображений.

Вот наваял Поиск с Сортировкой Ресторанов на React JS. Может еще чего-то добавлю со временем, Debug Info там интересный получилося.

Исходники выложил на GitHub, может кому-то полезно будет… Хотя писал я это за один день, так что не факт что стоит копировать мои решения не задумываясь 🙂

Правда про IT-шников

Послание от пьяного Карполана для нового поколения IT-шников:

Записано на Silicon Drinkabout в iHub Kyiv группой студентов, будущих ОйТи-шнегов 🙂

P.S. Все будет хорошо, просто выходите иногда из «IT пузыря» в «реальный мир».

Английский перевод книги опубликовал

На самом деле текст мне перевели пару месяцев назад, но как обычно не доходили руки опубликовать все статьи. Сегодня во время бессоницы закончил…

P.S. Надо бы конечно вычитать нетивами, но то уже в следующей жизни…