Forwarded from THINGS PROGRAMMERS DO
This media is not supported in your browser
VIEW IN TELEGRAM
Когда джун просит дажть ему доступ к базе данных продакшена.
История одного бага и комитта, где все объясняется https://github.com/alphagov/govuk-puppet/commit/63b36f93bf75a848e2125008aa1e880c5861cf46
Теперь я видел все 😆
Теперь я видел все 😆
GitHub
Convert template to US-ASCII to fix error · alphagov/govuk-puppet@63b36f9
I introduced some tests in a feature branch to match the contents of
`/etc/nginx/router_routes.conf`. They worked fine when run with `bundle exec
rake spec` or `bundle exec rspec modules/router/spe...
`/etc/nginx/router_routes.conf`. They worked fine when run with `bundle exec
rake spec` or `bundle exec rspec modules/router/spe...
HTTP Response 418 #УкрТґ 🇺🇦
Читаю одну крутую книгу по хайлоад, нашёл очень крутое объяснение разницы декларативного и императивного подхода. Будет ли интересен такой контент?
Telegraph
Декларативные запросы в Интернете
Преимущества декларативных языков запросов не ограничиваются использованием только в базах данных. Чтобы проиллюстрировать это утверждение, сравним декларативный и императивный подход в совершенно другой среде: браузере. Допустим, у нас есть сайт, посвященный…
Forwarded from PHP Digest
Чёрная магия PHP
https://github.com/lisachenko/z-engine
Как замокать финальный класс или переопределить финальный метод? Ну допустим, для этого есть badoo/soft-mocks. А как насчёт добавить интерфейс к существующему классу в рантайме? Или, например, изменять тип объекта.
Новая библиотека от Александра Лисаченко потенциально позволяет делать вообще всё что угодно.
В PHP 7.4 добавлена новая возможность – FFI, которая позволяет подгружать сишные модули (.dll or .so), и вызывать функции из них или использовать структуры данных из C на чистом PHP.
Библиотека Z-Engine использует FFI, чтобы получить доступ к внутренним структурам самого PHP! Z-Engine читает нативные структуры PHP, например, zend_class_entry, zval, и подобные и может изменять их в рантайме.
https://github.com/lisachenko/z-engine
Как замокать финальный класс или переопределить финальный метод? Ну допустим, для этого есть badoo/soft-mocks. А как насчёт добавить интерфейс к существующему классу в рантайме? Или, например, изменять тип объекта.
Новая библиотека от Александра Лисаченко потенциально позволяет делать вообще всё что угодно.
В PHP 7.4 добавлена новая возможность – FFI, которая позволяет подгружать сишные модули (.dll or .so), и вызывать функции из них или использовать структуры данных из C на чистом PHP.
Библиотека Z-Engine использует FFI, чтобы получить доступ к внутренним структурам самого PHP! Z-Engine читает нативные структуры PHP, например, zend_class_entry, zval, и подобные и может изменять их в рантайме.
// Сделаем абстрактный класс обычнымОсторожно! Библиотека предоставляет практически неограниченный доступ к памяти самого PHP и работает со структурами на низком уровне. Поэтому вполне возможны сегфолты, утечки памяти и другие неприятные последствия. Так что, только для тестов.
$refClass = new ReflectionClass(TestClass::class);
$refClass->setAbstract(false);
assertFalse($refClass->isAbstract());
$instance = new TestClass();
assertInstanceOf(TestClass::class, $instance);
GitHub
GitHub - lisachenko/z-engine: :zap: PHP Engine Direct API
:zap: PHP Engine Direct API. Contribute to lisachenko/z-engine development by creating an account on GitHub.
Forwarded from oleg_log (Oleg Kovalov)
Нашел отличную и официальную организацию от AWS с кучей примеров. В общем-то а как еще втянуть людей в свою секту? Но вещь полезная.
https://github.com/aws-samples?type=source
https://github.com/aws-samples?type=source
Я поражён этой инициативой.
Вдруг у человечества будут проблемы. Например много умрет. Или техногенная катастрофа. Современное программное обеспечение законсервируют как святой грааль с инструкциями о восстановлении данных.
https://archiveprogram.github.com/
Вдруг у человечества будут проблемы. Например много умрет. Или техногенная катастрофа. Современное программное обеспечение законсервируют как святой грааль с инструкциями о восстановлении данных.
https://archiveprogram.github.com/
GitHub Archive Program
Preserving open source software for future generations
В моем опенспейсе работает от 40 до 50 человек. Стал задываться о покупке вот такой штуки
Пользовался кто-нибудь? Может есть советы? Пишите в личку @omentes
Пользовался кто-нибудь? Может есть советы? Пишите в личку @omentes
ROZETKA
Наушники противошумные защитные 3M Peltor Optime III (12529)
ROZETKA ⚡️ Купить Наушники противошумные защитные 3M Peltor Optime III (12529) от продавца: Traveller | Низкие цены, гарантия, скидки, кредит или оплата частями
Forwarded from Sysadmin Tools 🇺🇦
Никак не умрет этот ваш php...
https://www.opennet.ru/opennews/art.shtml?num=51944
https://www.opennet.ru/opennews/art.shtml?num=51944
www.opennet.ru
Релиз языка программирования PHP 7.4
После года разработки представлен релиз языка программирования PHP 7.4. Новая ветка включает серию новых возможностей, а также несколько изменений, нарушающих совместимость.
Forwarded from Sysadmin Tools 🇺🇦
Давеча попросил человека перенести полностью репы с одной VCS в другую, к примеру с github в gitlab. Сейчас смотрю, а там не перенос, а просто коммит без веток и всего прочего. Думаю сделаю пост:
Как сделать полный перенос репозитория на другой сервер #vcs #git #github #gitlab #bitbucket
Как сделать полный перенос репозитория на другой сервер #vcs #git #github #gitlab #bitbucket
# Клонируем исходный репозиторий без рабочего каталога (--bare)
git clone --bare https://github.com/exampleuser/old-repository.git
cd old-repository.git
# Делаем mirror-push(будут скопированы все ветки и тэги) в новый репозиторий
git push --mirror https://github.com/exampleuser/new-repository.git
cd ..
# Удаляем папку с репозиторием
rm -rf old-repository.gitИспользование
.git/hooks/commit-msg
Копируем пример в рабочий хукcp .git/hooks/commit-msg.sample .git/hooks/commit-msgРедактируем содержимое файла
~/test(TEST-BRANCH) » cat .git/hooks/commit-msgТеперь при коммите будет следующее поведение - к вашему сообщению в начале будет добавлено название бранчи в квадратных скобках.
#!/bin/sh
COMMIT_EDITMSG=$1
NAME=$(git branch | grep '*' | sed 's/* //')
echo "[$NAME] $(cat $COMMIT_EDITMSG)" > $COMMIT_EDITMSG
cat $COMMIT_EDITMSG
git commit -am 'text'
даст текст коммита[TEST-BRANCH] text#git
Forwarded from IT Юмор
This media is not supported in your browser
VIEW IN TELEGRAM
Когда действительно заботишься о надеждности пароля своих пользователей
Forwarded from Life-Hack - Хакер
#Обучение
Утечка имён файлов в .DS Store: как просмотреть содержимое и как эксплуатировать
Читать далее...
Утечка имён файлов в .DS Store: как просмотреть содержимое и как эксплуатировать
Читать далее...
Telegraph
Утечка имён файлов в .DS_Store: как просмотреть содержимое и как эксплуатировать
#Обучение DS_Store — это файлы в операционной системе Apple OS X, они хранят пользовательские настройки папки, такие как расположение иконок, выбранное фоновое изображение, список файлов. Имя является сокращением от Desktop Services Store. Эти файлы создаются…