Pull to refresh
23
Karma
0
Rating
SinTeZoiD @SinTeZoiD

User

Telegram WebApps. Как встроить веб-приложения в чат-бота?

Website development *Python *JavaScript *Interfaces *API *
Sandbox

Относительно недавно команда Telegram выпустила обновление, с которым появилась возможность встраивать в мессенджер веб-приложения. Эта статья — обзор основных моментов внедрения веб-приложениий в телеграм-ботов.

Читать далее
Total votes 15: ↑15 and ↓0 +15
Views 15K
Comments 9

Немного про ПИД-регуляторы или «велосипед автоматизации». Часть 1

System Analysis and Design *Industrial Programming *SCADA *

Часть 1. От практики к теории.

Как и все поколения будущих инженеров, в ВУЗе я делал лабораторные и курсовые, что-то рассчитывал, чертил годографы и казалось, что понимал теорию и был готов применять ее на практике. По окончанию университета, попав инженером АСУТП на нефтеперерабатывающий завод, увидев реальную установку, контроллеры, датчики, клапаны, я был в некотором недоумении: как связать теорию САР с поддержанием в колонне уровня скворчащей горячей жидкости при посредстве дрожащего буйкового уровнемера и гудящего замазученного клапана. Да и описание регулятора в документации на ПЛК сильно отличалось от схемы в лекциях по САУ. Со временем, поняв опытным путем и процессы в колоннах и аппаратах, и подходы к практическому построению контуров регулирования, освежив в памяти теорию удалось более осознано связать теорию САР с реальным процессом. Но каждое следующее поколение инженеров, попадая после ВУЗа на реальное производство, задавалось теми же вопросами.

Почитав еще раз лекции и пересмотрев множество материалов по «практической реализации ПИД-регуляторов», я не нашел грамотного и доступного для понимания описания как самого ПИД-регулятора, так и процесса регулирования. Поэтому решил написать свою статью «про велосипед автоматизации».

Читать далее
Total votes 11: ↑8 and ↓3 +5
Views 7.5K
Comments 13

Это не тот ЦОД, к которому вы привыкли. Чем аттестованный сегмент отличается от классического?

Selectel corporate blog Information Security *IT Infrastructure *IT Standards *Legislation in IT

Сегодня у компаний есть несколько вариантов размещения своих приложений в зависимости от задач и требований регуляторов. Аттестованный сегмент ЦОД занимает выгодную позицию с точки зрения возможности масштабирования и гибкости оплаты по сравнению с on-premise инфраструктурой. При этом сохраняет почти такой же уровень контроля за безопасностью.

Но чем отличается аттестованный сегмент от обычного? И как организована работа с серверами А-ЦОД в Selectel? Разбираемся вместе с руководителем отдела разработки и сопровождения сервисов ИБ Антоном Ведерниковым. Подробности под катом.
Читать дальше →
Total votes 49: ↑47 and ↓2 +45
Views 2.5K
Comments 12

Пожалуйста, прекратите называть админов девопсами

System administration *IT Terminology IT career DevOps *

А дело было так - я ловил пескарей пару недель назад я решил начать искать работу.

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

Заголовок статьи не оставляет простора для интриги, в нём, в общем-то, максимально сжато выражена суть нижеследующего повествования - но я всё-таки рискну отнять пару минут вашего времени, расписав более подробно мои соображения на эту тему.

Нам нужен девопс
Total votes 102: ↑99 and ↓3 +96
Views 42K
Comments 214

Гидропоника для балкона? Почему бы и да

RUVDS.com corporate blog Developing for Arduino *DIY
Картинка: kartinkin.net

Скоро лето и хочется чего-нибудь эдакого, связанного с природой, чего-нибудь зелёненького, может быть даже цветущего… Если вас мучают те же самые мысли, что и меня, то вполне можно попытаться объединить реализацию этих мыслей и свои технические навыки для создания небольшой домашней фермы по выращиванию чего-нибудь своего.
Читать дальше →
Total votes 45: ↑40 and ↓5 +35
Views 20K
Comments 40

Осваиваем LaTeX за 30 минут

RUVDS.com corporate blog LaTeX *Studying in IT
Tutorial
Translation

Это руководство нацелено на первое знакомство с LaTeX и предварительных знаний о нем от вас не потребует. К его завершению вы уже напишете свой первый документ и получите представление о ряде базовых возможностей этого инструмента.
Читать дальше →
Total votes 66: ↑61 and ↓5 +56
Views 116K
Comments 57

Архитектура программного обеспечения переоценена, простой и понятный дизайн — недооценен

Programming *System Analysis and Design *
Translation
image

Вашему вниманию предлагается перевод поста Гергелия Ороса, занимающего должность Engineering Manager в Uber. В нем он делится своим взглядом на проектирование крупномасштабных систем, основанном на собственном практическом опыте работы в Uber и Microsoft. В сочетании с комментариями на Hacker News, которые добавляют весомые контр-аргументы и дополняют точку зрения автора, его статья стала одним из самых интересных постов недели. В статье используется термин «дизайн кода» для сравнения с традиционной «архитектурой» — о нем подробнее можно прочитать здесь.

На мою долю выпало достаточно опыта в проектировании и создании крупномасштабных систем. Я принимал участие в переписывании распределенной системы платежей в Uber, проектировании и релизе Skype на Xbox One и выпуске в открытый доступ RIBs — мобильного архитектурного фреймворка, созданного в Uber. Все эти системы имели тщательно продуманный дизайн, прошли через несколько итераций, с ними связано множество совещаний, проведенных у маркерной доски, и других обсуждений. Затем придуманный дизайн сводился к дизайн-документу, который распространялся среди других разработчиков для сбора дополнительной обратной связи, который продолжался до тех пор, пока мы не переходили к разработке.

Все эти системы отличали большие масштабы: их создавали сотни разработчиков — или они использовали их в своих разработках — и сегодня они бьются в сердцах систем, которыми ежедневно пользуются миллионы людей. Причем, эти проекты создавались не с нуля. Система платежей должна была заменить две другие существующие платежные системы, используемые десятками других систем и дюжинами команд, и все это — без какого-либо ущерба для бизнеса. Переписывание приложения Uber было проектом, над которым одновременно работало несколько сотен инженеров — он включал в себя портирование всей существующей функциональности на новую архитектуру.
Читать дальше →
Total votes 73: ↑66 and ↓7 +59
Views 45K
Comments 65

Как я пишу конспекты по математике на LaTeX в Vim

VIM *LaTeX *Mathematics *
Tutorial
Translation
Некоторое время назад на Quora я отвечал на вопрос: как успевать записывать за лектором конспект по математике на LaTeX. Там я объяснил свой рабочий процесс по конспектированию в LaTeX с помощью Vim и Inkscape (для рисунков). Но с тех пор многое изменилось, так что я хочу опубликовать несколько постов в блоге с описанием нового процесса. Это первая из статей.

Я начал использовать LaTeX для конспектирования во втором семестре курса математики, и с тех пор написал более 1700 страниц. Вот несколько примеров, как выглядит конспект:


Читать дальше →
Total votes 222: ↑220 and ↓2 +218
Views 108K
Comments 133

Kubernetes monitoring от простого к сложному (Николай Храмчихин)

DevOps *


Разберём как при помощи VictoriaMetrics замониторить kubernetes. Откуда собирать метрики и как автоматически обнаруживать новые цели. Черная магия релейблинга и как она работает. Аннотации для мониторинга приложений и что делать когда их гибкости не хватает

Читать дальше →
Total votes 18: ↑17 and ↓1 +16
Views 8.6K
Comments 4

TDD: Что пошло не так?

IT systems testing *Programming *System Analysis and Design *Designing and refactoring *TDD *
Translation

Эта статья является переводом материала «TDD: What went wrong or did it?».

В сфере разработки программного обеспечения уже давно хвалят Test Driven Development (TDD, разработка через тестирование). Однако в последнее время было сказано много резких слов в адрес TDD, поскольку его обвиняют в плохом проектировании программного обеспечения и невыполнении многих своих обещаний. Кульминацией этой тенденции стал пост Дэвида Хайнемайера Ханссона «TDD is dead. Long live testing.» (TDD мертв. Да здравствует тестирование).

Как это возможно, что одна и та же техника, которая так выгодна для стольких разработчиков, так губительна для других? В этой статье Владислав Кононов расскажет о трех заблуждениях, которые могли бы объяснить это явление.

Читать далее
Total votes 13: ↑11 and ↓2 +9
Views 15K
Comments 95

Теория тестирования ПО просто и понятно

IT systems testing *
Tutorial
Sandbox

Какие базовые знания нужны для понимания, что такое тестирование? Вот что будет рассматриваться в статье. Создавалась в помощь начинающим для подготовки к собеседованию

Читать далее
Total votes 15: ↑14 and ↓1 +13
Views 143K
Comments 10

Экономика бессерверных вычислений

Serverless *
Translation

Наша исходная задача заключалась в том, чтобы попытаться ответить на ряд актуальных вопросов, в частности: когда целесообразнее использовать AWS Lambda, а когда сервисы AWS EC2. А самое главное — разобраться, какие параметры играют в данном случае наибольшую роль.

Читать перевод далее
Total votes 17: ↑17 and ↓0 +17
Views 3.8K
Comments 2

Дефицит есть, а денег не дают. Почему?

Headz.io corporate blog Research and forecasts in IT *IT career Statistics in IT

Мы уже выяснили, что у нас есть дефицит рабочих рук во всех отраслях. На примере СССР увидели, что дефицит легко закрывается деньгами и плюшками, что сейчас и происходит в IT. Однако при дефиците рабочих рук в остальных отраслях зарплаты остаются на уровне Румынии и никак не подтягиваются. Почему?

Читать далее
Total votes 618: ↑603 and ↓15 +588
Views 275K
Comments 1199

Какой вклад внесло функциональное программирование в современные языки?

Typeable corporate blog Programming *Functional Programming *

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


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



В своей недавней статье мы рассказывали о практических применениях Лиспа и упомянули, что он сильно повлиял на развитие других языков программирования, но не стали вдаваться в детали. Пришло время более подробно раскрыть эту тему и разобраться, какой вклад функциональное программирование в целом (не только Лисп!) внесло в развитие других языков. Поскольку мы используем Haskell как основной язык разработки, и наша команда разработчиков состоит из ФП-энтузиастов, мы не смогли пройти мимо такой темы.


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

Читать дальше →
Total votes 49: ↑48 and ↓1 +47
Views 17K
Comments 15

Объяснение физической сущности явления «Подъёмная сила Крыла» без использования уравнения Бернулли

Popular science
Recovery mode
Sandbox
Монин Илья Алексеевич, к.т.н., МГТУ им.Баумана., imoninpgd@gmail.com

Критика существующего Теоретического объяснения Подъёмной Силы на крыле самолёта


Прослушав курс лекций МФТИ Факультет аэромеханики и летательной техники (ФАЛТ) «Введение в Аэродинамику» и прочитав несколько разных ВУЗовских учеников по «Аэродинамике» [1-3], я был озадачен рядом явных противоречий в объяснениях физики процесса обтекания потоком воздуха (газа или идеальной жидкости) различных твёрдых предметов и формирования подъёмной силы на крыле.

  1. Основной тиражируемой Версией образования подъёмной силы на крыле заявляется разность скоростей течения воздуха (жидкости) над крылом и под крылом, и вследствие этого возникает перепад давления согласно Закону Бернулли. При этом однозначно связывают через закон Бернулли расчётную скорость потока на поверхности крыла с инструментально регистрируемым давлением на крыло, игнорируя другие возможные объяснения на основе не менее базовых законов физики.
  2. При анализе обтекания идеальной невязкой жидкостью профилей в плоских течениях удивительным образом получали кратное повышение скоростей потока в сравнение с базовой скоростью V0. То есть опровергается закон сохранения энергии, так как энергия на разгон потока берётся ниоткуда, кратно превышая энергию набегающего на крыло потока. При этом игнорируется постулат гидродинамики, что по тому же закону Бернулли при истечении струи из-под уровня скоростной напор однозначно ограничивается сверху статическим напором в сосуде, то есть скоростной напор струи после разгона на крыле не может превысить статического давление сжатой при торможении среды.
Читать дальше →
Total votes 103: ↑73 and ↓30 +43
Views 87K
Comments 652

Go, локдаун и новый MPD-клиент — встречайте Ymuse

Open source *Go *Development for Linux *Sound

Уже лет десять моим основным медиаплеером на компьютере является MPD, Music Player Daemon — фоновый сервис, воспроизводящий музыку.


Чтобы с этим сервисом как-то взаимодействовать, нужна программа-клиент. Таких программ существует не один десяток, но до недавнего времени я никак не мог найти ту, которая меня бы полностью устраивала — поэтому в один прекрасный день я решил написать свою (тут и локдаун кстати подвернулся).


Предлагаю вашему вниманию краткий обзор (сравнительно) нового MPD-клиента для Linux/GTK под названием Ymuse, версию 0.16 которого я недавно выпустил.

Читать дальше →
Total votes 16: ↑15 and ↓1 +14
Views 6.6K
Comments 22

Предельно дешёвая видеоаналитика для детских футбольных школ

Орбита corporate blog Working with video *Machine learning *Project management *


Привет, Хабр! Ещё до продажи Мосигры мы полезли в образование. Там оказалось чуть интереснее, чем могло показаться сначала, и на сегодня мы успели открыть 124 футбольных школы, киберспортивные секции, танцы, шахматы и всё такое. Карантин слегка подрезал нам работу до 70 активных точек. Тут надо сказать, что с учётом опыта розницы, в ДНК проекта сразу закладывали очень быструю масштабируемость, чтобы по возможности построить межгалактическую сеть дополнительного образования. А один из самых больших вопросов в такой ситуации — как контролировать качество этого самого образования.

Вот футбольные тренировки. С одной стороны, конечно, у нас есть методология, которая частично на базе испанской, а потом нам её очень сильно доработали умные дядьки в РГУФК. По идее, она даёт некий стандарт, как и чему тренеры будут учить детей, но этого мало. Каждый тренер — яркая индивидуальность. Это круто, но опасно: нужно как-то следить за прогрессом. Более того, это не только наша хотелка как организации, но и прямая хотелка родителей.

Родители в образовании обычно не чувствуют прогресса ребёнка. Есть, конечно, всякие турниры, отчётные концерты и годовые экзамены, но обратная связь длиной в полгода — плохой план. Мы решили, что нужно автоматически генерировать отчёты с каждой тренировки. И вот тут мы подходим к тому, что обычно делается руками для профессиональной футбольной команды — видеоаналитике действий игроков на поле. Садится человек и примерно за 50-100 долларов за час расшифровывает происходящее. Схема не масштабируемая: вот у нас в январе 2020 занималось 165 групп в среднем по 9 раз в месяц – это будет от 75 до 150 тысяч долларов в месяц.

Но, поскольку мы живём в веке свёрточных нейросеток, можно сделать всё с дешманской камерой (но всё же fullHD 30 FPS) прямо на школьной тренировке. И, более того, мы это уже сделали до стадии беты.
Читать дальше →
Total votes 99: ↑98 and ↓1 +97
Views 19K
Comments 53

Антипаттерны Vim

VIM *
Tutorial
Translation
Когда вы находитесь в состоянии потока, Vim серьёзно ускоряет редактирование, будь то написание кода, поэзии или прозы. Но поскольку кривая обучения слишком крута для текстового редактора, то очень легко сохранить вредные привычки с тех времён, когда вы только осваивали редактор. Vim настолько ускоряет работу, что искоренить эти привычки особенно трудно, ведь их можно даже не заметить. Но это того стоит. Перечислю некоторые из наиболее распространённых антипаттернов.
Читать дальше →
Total votes 35: ↑33 and ↓2 +31
Views 20K
Comments 55

Тестирование не для начинающих

IT systems testing *IT career
Translation
Я большой фанат тестирования. Я пишу об этом в блог и почтовую рассылку, я обсуждаю это c другими разработчиками в свободное время, я зашел так далеко, что даже создал обучающий курс по тестированию в Go.

Но несмотря на всю мою любовь к тестированию, я не рекомендую его новичкам.

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

  1. Начинающим не хватает знаний, чтобы писать что-либо кроме самых простых тестов. Это неизбежно приводит к следующему пункту…
  2. Пытаться тренировать навыки, необходимые для написания реалистичных тестов, одновременно с обучением программированию крайне тяжело

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

Знаю, многие из вас не согласятся со мной, но пожалуйста, прочитайте статью, и, если после прочтения вы останетесь при своем мнении, я буду рад обсудить это с вами. В конце концов, я здесь чтобы учиться
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views 14K
Comments 6

Стажёр Вася и его истории об идемпотентности API

Яндекс corporate blog Website development *Development of mobile applications *Interfaces *API *

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


Меня зовут Денис Исаев, и я руковожу одной из бэкенд групп в Яндекс.Такси. Сегодня я поделюсь с читателями Хабра описанием проблем, которые могут возникнуть, если не учитывать идемпотентность распределенных систем в своем проекте. Для этого я выбрал формат вымышленных историй о стажёре Васе, который только-только учится работать с API. Так будет нагляднее и полезнее. Поехали.


image

Читать дальше →
Total votes 219: ↑216 and ↓3 +213
Views 168K
Comments 163

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity