Как стать автором
Обновить
1
0

Пользователь

Отправить сообщение

Торговые роботы на Golang

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров11K

Трейдеры на финансовом рынке обрабатывают большие объемы информации и принимают решения максимально быстро, чтобы не упустить возможность и избежать рисков. Получить преимущество можно, если умеешь хотя бы немного программировать. Это особенно важно там, где время — деньги.

Я Александр Парфенов, бэкенд-разработчик в Тинькофф Инвестициях и автор InvestAPI SDK для языка Go. Расскажу о том, как автоматизировать торговые стратегии при помощи Tinkoff INVEST API и языка Go.

Читать далее
Всего голосов 14: ↑12 и ↓2+14
Комментарии7

Crossplane. Где встречаются Kubernetes и облака

Время на прочтение10 мин
Количество просмотров5.9K

Система контейнерной оркестрации Kubernetes де факто стала золотым стандартом в DevOps, как универсальный инструмент управления конфигурацией и автоматической поддержки ожидаемого состояния системы. Но, даже при использовании Managed Kubernetes решений (например, Amazon EKS, GKE или решений от Яндекс Облака или Mail.Ru), некоторые сервисы провайдера размещаются за пределами Kubernetes (например, S3-совместимое хранилище, брокеры очередей или базы данных) и хотелось бы иметь возможность управлять с использованием общей конфигурации. В статье мы обсудим возможности использования проекта Crossplane (входит в Incubating CNCF), а также посмотрим на код провайдера на примере управления базами данных MySQL.

Читать далее
Всего голосов 8: ↑8 и ↓0+8
Комментарии0

SQL HowTo: делаем из мухи слона (алгоритм Ли)

Время на прочтение4 мин
Количество просмотров7.1K

Правила игры очень просты: надо построить цепочку слов от начального (МУХА) до конечного (СЛОН), на каждом шаге меняя только одну букву. При этом могут использоваться только русские 4-буквенные нарицательные существительные в начальной форме: например, слова БАЗА, НОЧЬ, САНИ допускаются, а слова ЛИТЬ, ХОТЯ, РУКУ, НОЧИ, САНЯ, ОСЛО, АБВГ, ФЦНМ — нет.

Эта игра под названием «Дублеты» приобрела известность благодаря Льюису Кэрроллу — не только автору книг про Алису, но ещё и замечательному математику. В марте 1879 года он начал раз в неделю публиковать в журнале «Ярмарка тщеславия» по три задания в форме броских фраз: «Turn POOR into RICH» — «Преврати бедного в богатого», «Evolve MAN from APE» — «Выведи человека из обезьяны», «Make TEA HOT» — «Сделай чай горячим». В том же году он выпустил брошюру «Дублеты», подробно описал в ней правила и предложил читателям попрактиковаться на нескольких десятках примеров.

Александр Пиперски, "Из мухи — слона", «Квантик» №2, 2019 и №3, 2019

Сегодня мы научимся реализовывать на SQL волновой алгоритм, решив заодно классический пример из этой игры для конкретного словаря.

Читать далее
Всего голосов 20: ↑20 и ↓0+20
Комментарии9

Как правильно делать уборку в доме, если кого-то стошнило

Время на прочтение13 мин
Количество просмотров44K

Ультрафиолет с длиной волны 365 нм показывает следы органики в вашей квартире

Убираться надо, чтобы не было пыли. Но всю пыль дома всё равно не убрать. Во-первых, она останется за холодильником, на шкафах и за шкафами, в радиаторе отопления и в других местах. Во-вторых, даже если вы каким-то чудом полностью уберёте пыль, через час в квартире уже начнёт скапливаться новая. То есть в среднем у нас в домах всегда пыльно.

Смысл уборки не в том, чтобы сделать всё визуально чистым, а чтобы в воздухе летало поменьше частиц и чтобы не устраивать кормовые площадки для разной мелкой живности, которая ест отшелушивающиеся частицы эпидермиса вашей кожи. А этих частиц в домашней пыли — до четверти.

Самые опасные твари среди них — пылевые клещи. Они доказано вызывают проблемы с иммунитетом, в особенности часто — аллергии. Причём, помимо респираторных проблем, они могут провоцировать атопический дерматит и даже аллергию на креветок.

Поэтому сегодня будем говорить про домашнюю микроживность, правильную уборку и места, куда вы наверняка забываете заглянуть. Заодно посмотрим, как правильно корректировать уборку, если кто-то заболел и по квартире внезапно оказались разлиты биологические жидкости больного человека.
Читать дальше →
Всего голосов 64: ↑58 и ↓6+74
Комментарии80

Альтернативы HashiCorp Boundary

Время на прочтение5 мин
Количество просмотров6.3K


HashiCorp Boundary — это пропускная система с открытым исходным кодом, которая обеспечивает пользователю безопасный доступ к динамическим хостам и критически важной инфраструктуре в разных средах. Однако, если вам нужен простой и безопасный способ управления доступом к базам данных, кластерам Kubernetes, облачным интерфейсам командной строки, коммутаторам, маршрутизаторам или внутренним веб-приложениям, можно рассмотреть и другие сервисы. В этой статье, мы рассмотрим несколько альтернатив и обсудим сильные и слабые стороны каждой из них. Итак, сделаем экспресс-анализ фичей каждого сервиса, которые, возможно, вас заинтересуют.

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии1

Внутреннее устройство Kubernetes-кластера простым языком

Время на прочтение6 мин
Количество просмотров70K

Прим. перев.: как многим хорошо известно, Kubernetes — это всего лишь пять бинарников. Об их назначении и рассказывает в этой статье Vedashree Patil, консультант из Deloitte Digital. Когда ей потребовалось изучить Kubernetes, она столкнулась с большим количеством новой информации, осознать которую за короткое время было непросто. Так она пришла к идее уменьшить порог вхождения в K8s другим специалистам, создав цикл публикаций «Kubernetes 101». Все статьи сопровождаются простыми и наглядными комиксами. Представляем вниманию перевод материала под названием «Внутри кластера» из этого цикла.

Как выглядит кластер Kubernetes? Как работают узлы? Из этой статьи вы узнаете обо всех основных компонентах системы Kubernetes.

Читать далее
Всего голосов 57: ↑55 и ↓2+61
Комментарии10

Здоровый сон взрослого человека — это засыпать за 15 минут и не вставать ночью попить и пописать

Время на прочтение13 мин
Количество просмотров164K


Послушала на днях 2х-часовое выступление «Здоровый сон» врача-невролога, сомнолога Елены Царевой. Выдернула самые важные для себя пункты:

  1. Спать регулярно, ложиться и вставать в одно и то же время — самое важное. 
  2. Биоритмы — частично наследуются, частично регулируются стилем жизни. На них можно влиять самому.
  3. Нормальное время отхода ко сну около 22:00. Сова и жаворонок — это отклонение на ±1-2 часа. Больше — это нарушение и сдвиг фазы сна, чаще из-за внешних раздражителей.
  4. Самая частая причина плохого сна и тяжелого засыпания — неправильный свет.
  5. Для сдвига режима на 1 час организму нужен 1 день на адаптацию.
  6. Невозможно «доспать» бессонную ночь. Досыпание устраняет только 30% последствий недосыпа.
  7. Прежде, чем искать причины плохого сна, исключите психологические проблемы (тревожность, депрессию), нарушения щитовидки, дефицит железа, диабеты, сердечно-сосудистые заболевания и патологию почек и мочеполовой системы.
  8. Водителям и пассажирам: 17 часов без сна равны 0,5 промилле, 21 час без сна — 0,8 промилле.
  9. В постели без сна больше 15 минут не находиться — совет при бессоннице. 
  10. Самые физиологичные будильники — те, что светятся. 

Под катом конспект 2х-часового выступления про сон на 15 минут чтения. Еще один поинт в копилку полезных материалов про сон — Sleep Hackers.
Читать дальше →
Всего голосов 139: ↑119 и ↓20+126
Комментарии247

48 полноценных бесплатных книг для программистов (happy developer's day)

Время на прочтение2 мин
Количество просмотров109K

Привет, Хабр! Немного запоздало (ко дню программиста) делюсь подборкой бесплатных книг по программированию. Все они полезные, уровень скорее профессиональный, хотя и для развития от базового тоже подойдет, но, к сожалению, на английском. Среди тем книг: .NET, Алгоритмы, Android, iOS, Angular, C, C++, C#, JS, Linux, Python. В целом, найдется почти любая тема, которая приходит в голову.

Дисклеймер. Все эти книги взяты с одного ресурса, который существует за счет донейшенов. Получить книги можно без осуществления донейшенов, ресурс полностью бесплатный, пожертвования опциональны. Все книги написаны на основе контента со StackOverflow и являются код-ориентированными. Книги со временем обновляются. По ссылкам -- книги, актуальные на 15.09.2021.

Читать далее
Всего голосов 83: ↑82 и ↓1+98
Комментарии55

Запросы в PostgreSQL: 1. Этапы выполнения

Время на прочтение17 мин
Количество просмотров78K

Привет, Хабр! Начинаю еще один цикл статей об устройстве PostgreSQL, на этот раз о том, как планируются и выполняются запросы.

Предыдущие циклы были посвящены изоляции и многоверсионности, журналированию и блокировкам.

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

Материал перекликается с нашим учебным курсом QPT «Оптимизация запросов», но ограничивается только подробностями внутреннего устройства и не затрагивает оптимизацию как таковую. Кроме того, я ориентируюсь на еще не вышедшую версию PostgreSQL 14. А курс мы тоже скоро обновим (правда, на версию 13; приходится бежать со всех ног, чтобы только оставаться на месте).

Поехали
Всего голосов 33: ↑33 и ↓0+33
Комментарии11

Кто такой CTO (Chief Technical Officer): что, зачем, за сколько?

Время на прочтение4 мин
Количество просмотров49K

Chief Technical Officer — представитель топ-менеджмента компании (помимо английской аббревиатуры, можно встретить название «технический директор»), который определяет технологическую стратегию компании и отвечает за внедрение новых технологий — все ради достижения финансовых и стратегических целей бизнеса.

Читать далее
Всего голосов 12: ↑4 и ↓8-2
Комментарии1

Как мы использовали расширенную статистику Postgres и ускорились в 2850 раз

Время на прочтение9 мин
Количество просмотров13K

В этом переводе к старту курса по Fullstack-разработке на Python напоминаем о том, насколько важно знать технологии в деталях, грамотно применять их и планировать работу в целом. Цифра 2850 в заголовке — не преувеличение: ранее занимавший две минуты запрос в базе данных компании Affinity сегодня выполняется за 42 миллисекунды. Подробности, как всегда, под катом. А если вам нужен план развития навыков с большим количеством практики, вы можете обратить внимание на наши курсы.

Читать далее
Всего голосов 21: ↑18 и ↓3+19
Комментарии5

Как устроен Domain-Driven Design

Время на прочтение13 мин
Количество просмотров49K

Многие проекты на Django начинаются просто: есть база данных и к приложению, которое крутится на сервере, идут обращения. Например, так начиналась Dodo IS (информационная система компании Додо Пицца, где работал автор сегодняшней статьи). Но если использовать Django из коробки, можно натворить много бед и встретить пачку антипаттернов. Возможно, вы встречали такое на старых legacy-проектах.

Евгений Пешков развивает сообщество DDD-практиков, рассказывая, какие проблемы решает Domain-Driven Design (предметно-ориентированное проектирование) в современном мире. На конференции Russian Python Week 2020 он выступил с рассказом об этом. Кстати, 19 августа пройдет встреча DDDevotion-сообщества, присоединяйтесь, будем о чем поговорить.

В сегодняшней статье будет его рассказ про то, как устроен Domain-Driven Design и какие инструменты использует, чтобы наиболее точно описать требования бизнеса и сам бизнес.

Читать далее
Всего голосов 36: ↑36 и ↓0+36
Комментарии28

Запуск проекта в Kubernetes за 60 минут

Время на прочтение18 мин
Количество просмотров33K


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


Я Павел Селиванов, ведущий DevOps-инженер облачной платформы Mail.ru Cloud Solutions. Я расскажу про альтернативный способ развертывания Kubernetes — использование Managed-варианта от облачного провайдера. Мы запустим реальный API-сервис на примере нашего облака и пройдем основные шаги развертывания приложений в K8s, включая подготовку инфраструктуры, настройку CI/CD-конвейера и всех необходимых объектов Kubernetes: Deployment, Service, Ingress и так далее.


В результате попробуем убедиться, что 60 минут — вполне достаточное время для освоения азов работы с K8s при условии использования его в виде aaS.


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


Практикум в видеоформате можно посмотреть по ссылке.

Читать дальше →
Всего голосов 12: ↑11 и ↓1+26
Комментарии11

Механическая раздельная ортолинейная беспроводная клавиатура. Corne Build Guide

Время на прочтение19 мин
Количество просмотров29K

В этой статье я постараюсь рассказать о том как собрать механическую ортолинейную раздельную беспроводную клавиатуру Corne. И расскажу зачем оно вам нужно.

Читать далее
Всего голосов 13: ↑9 и ↓4+7
Комментарии55

Как работать с Big Data быстрее и эффективнее: Kubernetes для Data Science

Время на прочтение10 мин
Количество просмотров9.9K


Big Data by Batjorge


Традиционный подход к построению работы с большими данными — развернуть Hadoop-кластер, установить дополнительные инструменты и построить на нем платформу для работы с данными. Но в таком подходе есть несколько ограничений, вроде невозможности разделения Storage- и Compute-слоев, сложностей масштабирования и изоляции сред для разных приложений. Даже несмотря на то, что Hadoop можно арендовать у облачного провайдера как сервис (aaS), такой подход все равно мало чем отличается от развертывания на собственном оборудовании.


Однако есть другой, Cloud-Native подход работы с большими данными. Он позволяет решить эти проблемы, а также получить дополнительные возможности от облачных технологий. Для этого используют Kubernetes, интегрируя его с различными инструментами.


Я Александр Волынский, архитектор облачной платформы Mail.ru Cloud Solutions. Расскажу, как Kubernetes помогает в работе с Big Data, какие используются инструменты и какие преимущества можно получить по сравнению с классическим развертыванием.


Также вы можете посмотреть видеовыступление на митапе «Большие данные: не хайп, а индустрия».
Читать дальше →
Всего голосов 17: ↑17 и ↓0+17
Комментарии4

Обзор методов численной оптимизации. Безусловная оптимизация: метод линий

Время на прочтение24 мин
Количество просмотров39K
image

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

Введение


Оптимизация — это процесс нахождения точки экстремального значения некоторой заданной целевой функции $f(\mathbf{x})$. Это один из крупнейших краеугольных камней прикладной математики, физики, инженерии, экономики, промышленности. Область её применений необъятна и может распространяться от минимизации физических величин на микро- и макроуровнях до максимизации прибыли или эффективности логистических цепочек. Машинное обучение также заострено на оптимизации: всевозможные регрессии и нейроные сети пытаются минимизировать ошибку между предсказанием и реальными данными.

Экстремум может быть как минимумом, так и максимумом, но обычно принято изучать любую оптимизацию исключительно как поиск минимума, поскольку любая максимизация эквивалентна минимизации из-за возможности поменять знак перед целевой функцией: $f(\mathbf{x})\to -f(\mathbf{x})$. Следовательно, в любом месте ниже под оптимизацией мы будем понимать именно минимизацию.
Читать дальше →
Всего голосов 36: ↑36 и ↓0+36
Комментарии13

Астрологи объявили год единорогов: количество миллиардных стартапов удвоилось

Время на прочтение5 мин
Количество просмотров6.5K
image


«Единорог» — частная технологическая компания с капитализацией $1 млрд и выше. Десятирог (декакорн) — $10 млрд, сторог (гектокорн) — $100 млрд.

Впервые этот термин был использован в 2013 году известным венчурным предпринимателем, основателем Cowboy Ventures Айлин Ли, выбравшей это мифическое животное как яркий образ для представления статистической редкости таких успешных компаний. На момент выхода статьи Welcome To The Unicorn Club: Learning from Billion-Dollar Startups, вдохнувшей новый смысл в сам термин “единорог”, которую Айлин Ли написала для TechCrunch, в мире насчитывалось только 39 компаний, которые можно было считать единорогами.


Ранее я писал о рыночной капитализации единорогов и индустриальных городах в 2019 и 2020 годах. За последние 8 месяцев количество технологических стартапов стоимостью 1 миллиард долларов и более («единорогов») выросло на 43% с 487 до 701. Это почти удвоение по сравнению с 361 единорогом в июне 2019 года (!).
Всего голосов 18: ↑11 и ↓7+8
Комментарии11

Как проходят архитектурные секции собеседования в Яндексе: практика дизайна распределённых систем

Время на прочтение25 мин
Количество просмотров141K
Привет, меня зовут Костя Кардаманов, я работаю в отделе технологий разработки Яндекса. Обычно такой же фразой я приветствую и кандидатов на собеседовании. А сегодня я хотел бы рассказать вам, как и зачем мы проводим интервью по дизайну систем с бэкенд-разработчиками. Сразу скажу: для фронтендеров, мобильных разработчиков и ML-инженеров подобный тип собеседований применим слабо, так что эти специальности мы здесь обсуждать не будем.

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

Что такое дизайн информационных систем


Основная цель любой IT-компании — производить сервисы, которые решают задачи пользователей. Мы должны уметь собирать элементы системы в единый механизм, который будет эффективно выполнять поставленную цель, и если первый тип собеседований нацелен в первую очередь на проверку необходимого минимума, то интервью про дизайн систем проверяет достаточность навыков кандидата в достижении конечной цели. Далекому от IT пользователю принципы и устройство систем могут казаться бесконечно сложными, но мы, их разработчики, должны иметь (не обязательно детальное) представление о принципах функционирования и роли каждого компонента.

Опытный читатель может сказать — в мире полно платных и бесплатных решений, из которых я могу собрать систему как из деталей конструктора, зачем мне понимать устройство этих деталей?
Читать дальше →
Всего голосов 67: ↑65 и ↓2+90
Комментарии37

Как я сократил код для нагрузочного тестирования в три раза

Время на прочтение12 мин
Количество просмотров13K


Главная концепция нагрузочного тестирования — автоматизировать все, что можно. Берёте инструмент, пишете конфиг и сценарий, запускаете имитацию реальной нагрузки. Чем меньше кода, тем лучше.

Автоматизировать нагрузочное тестирование не так сложно, как может показаться на первый взгляд. Для этого нужен правильный инструмент.

Я расскажу, почему мне не подошел Яндекс.Танк в связке с Pandora и как я в три раза сжал код своей утилиты тестирования без потери производительности.
Читать дальше →
Всего голосов 20: ↑17 и ↓3+27
Комментарии6

Как попасть в состояние потока?

Время на прочтение4 мин
Количество просмотров24K
Для меня попадание в состояние потока является единственным способом продуктивной работы над сложными программными проектами. И я полагаю, что разработчик может так организовать свою жизнь, чтобы как можно сильнее удлинить время, которое он каждый день может проводить в этом состоянии. Тут я хочу рассказать о том, что лично я пытаюсь делать для того, чтобы чаще попадать в состояние потока.

По полочкам:
Всего голосов 63: ↑45 и ↓18+44
Комментарии64
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Челябинск, Челябинская обл., Россия
Зарегистрирован
Активность