• Підхід GitOps як сучасна практика для CD з Kubernetes

    Як на мене то GitOps ОК лише там де є активна розробка нового проекту або вяла підтримки існуючого. Як тільки проект переходить в стан активної експлуатації з постійною доробкою і переробкою, то починаються проблеми які вирішуються ускладненням різних процесів розробки і все стає не дуже ОК (поріг входу, збільшення часу на розробку та тестування).
    Відчуття що не вистачає винесення тригерів деплоя на більш мануальний рівень (також можливо що я про щось не здогадуюсь, тому все ускладнюю))).

  • Корпоративне навчання, яке працює: три принципи

    Зазвичай це про процеси або технології. Ситуації можуть бути різні. Від особистого росту до рішення команди спробувати щось нове. Наприклад інженер переконав команду що використання монги «прискорить розробку/зробить швидшим сервіс/подолає купу проблем». Потрібно пошарити знання про nosql на всю команду до прийнятного рівня. Без навчання така ініціатива може швидко обернутись на фейл.

    Поддержал: Anna Liashenko
  • Корпоративне навчання, яке працює: три принципи

    Дуже прикольно і мені допомогло дещо розкласти по полицям.
    Єдине, не бачу логіки в відношеннях сприйняття 70/20/10 до витраченого часу 1/2/7. Зрозуміло що практика безпосередньо впливає на досвід. Але на сприйняття теорії і менторство, крім часу, ще впливають якістні характеристики. Тому, після умовно витраченої години на книгу, може бути достатньо 10 хвилин на роз’яснення, щоб у людини в голові все розклалось.

  • Об украинских хактивистах, кибервойне и уязвимостях в госсекторе. Интервью с членом Ukrainian Cyber Alliance Андреем Барановичем

    Идей множество: что можно было бы сделать и для защиты, и для атаки. Это как раз задача общественной организации придумывать такие проекты. Но они лежат в долгом ящике. Сначала разберемся с судом.

    Затягнуті суди та невисунуті обвинувачення це і є інструмент проти волонтерів чи активних людей, щоб зайняти їх виправданням, щоб вони не заважали «комусь» жити спокійно (атакуй, щоб вороги йшли в захист). Сумно.

  • Об украинских хактивистах, кибервойне и уязвимостях в госсекторе. Интервью с членом Ukrainian Cyber Alliance Андреем Барановичем

    Але є левова частина справок заради справок, та роботи заради роботи. І вже ніхто не пам’ятає для чого це робиться, і більше, всі бояться позбутись цього, бо — це відповідальність, яку ніхто не хоче брати на себе, та друга соціальна частина — куди діти всіх тих чиновників та клерків, якщо прибрати ці функції взагалі?

  • Интервью с Tech Lead, который стал гештальт-терапевтом: «Терапия, как хорошее кино, создает эффект присутствия в собственной жизни»

    Маючи менеджерський досвід відчуваю що до багатьох речей дійшов самостійно, але також бачу що дуже багато пробілів та не вистачає психології загалом.
    З чого почати?
    Хто і де проводить такі курси для починаючих цей шлях?

  • Подтвердженные аккаунты на ДОУ

    Досить давно видалив акаунт Linkedln та не планую заводити знов. Чи можна якось підтвердити без Linkedln, наприклад через Github?

    Поддержал: Ульяна Цветкова
  • Ошибки заказчика в разработке сайтов

    Явный пример отсутствия работы с заказчиком.

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

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    В.tt за < input> съелась строчка с div

    <'div class="auto_complete" id="complete_author_auto_complete"><'/div>
  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    Как то совсем обходят стороной технологию Ajax, имею ввиду документацию и туториалы. В частности нашел небольшой пример с использованием Catalyst: Plugin: Prototype. Возможно этот пример кого то побудит к созданию приличного туториала для Catalyst. Для начала добавляем в проект скрипты, это если мы их захотим подгружать статистически:

    ./script/MyApp_create.pl Prototype

    Подключаем плагин в lib/MyApp.pm

    use Catalyst qw/ ... Prototype /;

    в root/какойнить.tt добавляем следующий текст содержащий наше магическое поле ввода, предположим это строка ввода отражающая «автора» чего нибудь

    <form> [% c.prototype.define_javascript_functions # Добавляем необходимые скрипты %] [% c.prototype.auto_complete_stylesheet # и стили для организации выпадающего списка %] <input autocomplete="off" id="complete_author" name="complete_author" type="text">
    [% url = base _ 'proto/suggest' %] [% c.prototype.auto_complete_field( 'complete_author', { url => url } ) %] </form>

    Создаем контролер, к которому будем обращаться за списком

    ./script/test_create.pl Controller Proto

    в lib/MyApp/Controller/Proto.pm создаем обработчик запроса по первым введенным символам в наше поле. На основании введенной последовательности создается запрос like к нашей базе данных и формируется список. Список передается браузеру для формирования выпадающего списка.

    sub suggest : Local { my ( $self, $c ) = @_; my $complete_author = $c->req->params->{complete_author}; my @suggestions; my $rs = $c->model('DBIC::Journal')->search({ author => { 'like' => $complete_author . '%' }}); while (my $row = $rs->next) { push(@suggestions, $row->author); } $c->res->body($c->prototype->auto_complete_result(\@suggestions)); }

    вуаля, вводим первые символы и выпадающий список предлагает нам найденные в базе варианты, магия аля google-поиск стала доступна!

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    Может мои пять копеек и не кмест, но у меня заработало под apache2 с FastCGI

    <VirtualHost myhost:80>ServerName myhostErrorLog /var/log/apache2/myhost-error_logCustomLog /var/log/apache2/myhost-access_log commonDocumentRoot "/var/www/myapp/root"Alias /static /var/www/myapp/root/staticFastCgiServer /var/www/myapp/script/budget_fastcgi.pl -processes 3Alias / /var/www/myapp/script/budget_fastcgi.pl/<Directory "/var/www/myapp/root">Order allow,denyAllow from all</Directory><Directory "/var/www/myapp/script">Order allow,denyAllow from all</Directory></VirtualHost>

    но есть одна проблемма, myapp_fastcgi.pl вывод (stderr) перенаправляет в ErrorLog. Как бы отключить засерание лога, но покрасивее.

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    ларчик просто открывается -разобрался как убрать дебаг-информацию при запуске myapp_fastcgi.plнеобходимо из lib/myapp.pm удалить -Debug

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    шарясь по интернет много нелестного прочитал про плагин Unicode, но без конкретики. Прикрутив к своему проекту I18N (интернационализацию) столкнулся с проблемой двойного перекодирования шаблона в случае русской локали (возможно это связано с локалью системы по умолчанию). выглядит это так — в конфиге:

    # Currently supported locales<localization>    en English    ru Русский    uk Українська</localization>

    далее TT шаблон из конфига создает симпатичную менюшку наподобии wikipedia. Да вот незадача, когда нахожусь в ru-локале получаю двойное кодирование шаблона в utf-8. страдает только эта самая менюшка. Пока запускал через app_server.pl, возможно апач это выличит, но глюк налицо. Может кто сталкивался?

  • Catalyst — Perl веб-фреймворк в лучших традициях MVC

    С двойным перекодированием в unicode справился. В MyApp.pm добавляем:

    use utf8;...sub enc {    my ( $self, $str ) = @_;    utf8::decode($str);    return $str;}

    в шаблоне соответственно:

    [% c.enc(item.name) %]