![](http://webcf.waybackmachine.org/web/20200930043638im_/https://habrastorage.org/getpro/habr/avatars/59c/a30/ab3/59ca30ab375dc52f43c0b528e732b0fa.png)
Валидация в PHP. Красота или лапша?
![](https://webcf.waybackmachine.org/web/20200930043638im_/https://habrastorage.org/webt/wc/4y/kd/wc4ykdlos2zj8fbut4bdxuz12lq.jpeg)
Здравствуйте, меня зовут Дмитрий Карловский. А вы на канале Core Dump, где мы берём разные темы из компьютерной науки и деконструируем их по полочкам. А на этот раз мы начнём деконструировать принципы SOLID начиная с наиболее конкретного.
В далёком 1987 году Барбара Лисков сформулировала принцип разработки имени себя.
Liskov Substitution Principle
Он позволяет понять правильно вы написали полиморфный код или нет. Но прежде чем его сформулировать нам надо разобраться с некоторыми понятиями, которые входят в определение..
Задача оказалась не простой, так как столкнулся с отсутствием какой — либо внятной информации. Вероятнее, что «корень зла» находится в самом SDK от Nordic Semiconductor — это постоянное обновления версий, некоторая избыточность и запутанность функционала. Пришлось писать все с нуля.
Я думаю эта тема довольно актуальна исходя из того, что данный чип обладает BLE стеком и целым набором “вкусняшек” режима энергосбережения. Но в техническую часть я сильно углубляться не буду, так как на эту тему написано немало статей.
Железо:
Софт:
Почти год назад я представил свой pet-проект — IoT платформу ThingJS. Честно сказать, я не достиг всех целей, которые ставил перед собой публикуя ту статью. Но работа окупилась. Удалось получить нечто иное — полезную критику.
Я учел прошлый опыт. Теория без практики заходит плохо. В этот раз презентация будет построена на базе прикладного решения. Каждый сможет “потрогать” его и использовать в быту.
Это продолжение текста про архитектуры интерпрайз-систем. Рассуждения это хорошо, но какой в них толк без практического применения. Я покажу свой фреймворк в деле.
Всё началось с того, что я рассказывал про проблематику проектирования приложений на .NET и ныл про нелёгкую жизнь в кровавом интерпрайзе. Затем я описал решение, которое сам придумал и реализовал — Reinforced.Tecture. То была теория, концептуальные рассуждения, визионёрство и снова нытьё. На этот раз о том, что на дворе 2020 год, а HKT в C# так и не завезли.
Сегодня я продемонстрирую свой подход в действии на примере простенького проекта и покажу профиты, которые он даёт: от сокращения количества кода до автоматизации тестирования и оригинального подхода к документации. Как советовал старина Торвальдс: "Болтовня ничего не стоит, покажите мне код".
Последние разработки в области предварительного обучения языковых моделей привели к значительным успехам в сфере обработки естественного языка (Natural Language Processing, NLP), породив такие высокоэффективные модели, как BERT, RoBERTa, XLNet, ALBERT, T5 и многие другие. Эти методы, имеющие различную архитектуру, тем не менее, объединяет идея использования больших объемов неразмеченных текстовых данных для создания общей модели понимания естественного языка, которая затем дообучается и тонко настраивается для решения конкретных прикладных задач, вроде анализа тональности или построения вопросно-ответных систем.
Пандемия COVID-19 стала катализатором для новых полезных сервисов. Например, Zoom стал настолько успешным, что по стоимости обогнал в этом месяце IBM. Нас вдохновил этот пример, и мы решили пойти еще дальше: а что если онлайн-конференции реализовать на приставках и Smart TV, чтобы общаться не только по работе, но устраивать удаленные посиделки на диване с друзьями? Но ведь тогда можно на футболе вместе поболеть, и кино посмотреть или спортом заняться под контролем тренера.
Почему-то у операторов цифрового ТВ такой услуги не оказалось, хотя с инженерной точки зрения все эти функции вполне можно реализовать на ТВ-приставках на базе Linux/Android и RDK. Мы это проверили на практике и вот теперь делимся с читателями Хабра своим рецептом создания «аналога Zoom» и видеоконференций через Smart TV. Разберем архитектуру решения и кодирование видеопотока с использованием GStreamer. Информацию для работы с этим фреймворком мы собирали по крупицам, но оно того стоило.
Сегодня я хочу рассказать вам о Airtable — популярном zero-code инструменте, который используют самые разные специалисты — от фотографов до менеджеров. У сервиса есть множество фишек, из-за которых с ним полезно ознакомиться каждому программисту.
Вопрос о необходимости использования сертифицированных средств защиты информации, включая и криптографические, не теряет своей актуальности для коммерческих организаций уже очень долгое время. Он неустанно обсуждается в рамках выполнения требований по обеспечению безопасности персональных данных, критической информационной инфраструктуры, информационной инфраструктуры финансовых организаций и даже государственных информационных систем.
Сейчас же на авансцену выходит ГОСТ Р 57580.1-2017, соответствовать которому уже с начала следующего года должны информационные системы многих компаний финансового сектора. Документ дает весомый повод в очередной раз погрузиться в чтение многостраничного текста, чтобы понять, а требуются ли сертифицированные СЗИ и СКЗИ?
Получая большое количество аналогичных вопросов, мы решили рассмотреть эту тему комплексно, как в рамках ГОСТа, так и иных применимых правовых документов. И, конечно же, поделиться полученным результатом с вами.
Несмотря на то, что выводы, представленные в данной статье, подаются как применимые для финансовых организаций, они абсолютно свободно могут быть распространены и на любые иные компании. В конце концов, кто из нас не оператор персональных данных?