Pull to refresh

Technotext

Github Actions. Простой пример для уверенного знакомства

Reading time7 min
Views61K

Здесь я буду расссказывать о моем опыте настройки CI/CD c помощью GitHub Actions.

Эта статья поможет тем, кто хочет настроить автоматический деплой для личного/учебного проекта на свой удаленный сервер, пользуясь бесплатным сервисов GitHub Actions. Причем этим сервисом можно пользоваться бесплатно даже с приватным репозиторием (на момент написания статьи).

Акцентирую на тех моментах, которые для меня оказались не самыми очевидными, читая краткое руководство от Github.

Предполагается, что вы уже знаете, как пользоваться Github. По большому счету, не важно, какой у вас язык программирования или стек: главное - понять, как работают Github Actions и уметь применить его для любого проекта.

Читать далее

Как стать тимлидом?

Level of difficultyEasy
Reading time12 min
Views24K

Всем привет! Я Александр Яковлев, в Тинькофф руковожу разработкой бизнес-линии в нефинансовых сервисах.

Расскажу, чем занимаются тимлиды у нас в компании и что делать, чтобы вырасти до тимлида, а еще пройдусь по распространенным заблуждениям о работе. Добро пожаловать под кат!

Читать далее

Физически информированное машинное обучение, или Как я перестал бояться и полюбил искусственный интеллект

Level of difficultyMedium
Reading time7 min
Views8.2K

Привет, Хабр. Меня зовут Марат Хамадеев. Я — физик-теоретик, хотя кто-то, возможно, знает меня как научного журналиста, писавшего про физику для N + 1. Профессионально я рос в провинциальной академической среде, представители которой довольно скептически относились к применениям машинного обучения и, в частности нейронных сетей, для решения рутинных научных задач. Мне передался этот консерватизм — пока я писал новости про физику, я старался избегать исследований, построенных вокруг этого подхода.

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

Читать далее

DevOps-инструментарий в помощь с качеством кода: автоматические сценарии для тестов с использованием Helm

Reading time11 min
Views3.8K

Привет, Хабр! Меня зовут Анджей, я QA-лид в Сравни. В этой статье давайте попробуем если не победить, то хотя бы побороться вот с какой ситуацией: вроде всё сделали хорошо и проверяли, а сайт всё равно пролежал на выходных с 500-ми ошибками. Помогать с тестированием нам будет Kubernetes-инструментарий в общем (Helm) и механизм хуков в частности. 

Читать далее

Как прокачать профессиональную репутацию без публичных выступлений

Level of difficultyEasy
Reading time5 min
Views8.1K

Самые ходовые способы получить известность в статусе эксперта — публичные выступления и статьи.

Как быть, если хочется проявить экспертность, но страшно выступать и нет достаточной уверенности, чтобы писать статьи? Я DevRel-специалист в Тинькофф, и за время работы часто сталкивалась с такими вопросами. В этом материале я как раз рассуждаю, как развивать профессиональную репутацию при таких ограничениях. Добро пожаловать под кат.

Читать далее

Парсим сайты с защитой от ботов

Reading time26 min
Views52K

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

Речь не идет о каком-либо виде "взлома" или о создании повышенной нагрузки на сайт. Мы будем автоматизировать то, что и так можно сделать вручную.

Читать далее

Cyberpunk 2023: Мой первый кибернетический имплант

Level of difficultyEasy
Reading time7 min
Views6.7K

Технология RFID-имплантов существует довольно давно. RFID (Radio Frequency Identification) — это технология идентификации с использованием радиочастот. Главное её преимущество — это отсутствие необходимости в источнике питания. Радиоволны, принимаемые антенной чипа, обеспечивают достаточно электричества для его работы. Чип запитывается от радиосигнала и передаёт информацию, как правило, свой идентификационный номер. На этом, по большей части, и построены транспортные карты и системы доступа. В зависимости от модели, RFID-чип может быть как только для чтения, так и перезаписываемый. Если взять вашу кредитную карту и посмотреть на неё под ярким светом, можно разглядеть чип и антенну.

За последние 10 лет RFID-чипы распространились повсеместно: в картах бесконтактной оплаты, мобильных телефонах. Идея установить себе RFID-имплант у меня возникала ещё лет десять назад, с времён Японии и проездной карты Sapica. Примерно в то же время появились бесконтактные кредитные карты. Технология была доступна, но явно рассчитана на карты, а не на импланты в собственное тело. У карт был ограниченный срок действия, поэтому каждые несколько лет чип пришлось бы извлекать и устанавливать новый. Собственно, несмотря на доступность и удобство, идея внедрить себе под кожу компьютерный чип у многих вызывает отторжение. Думаю, именно психологический барьер стал, пожалуй, главным препятствием для более широкого внедрения этой технологии среди людей. Домашних животных чипируют давно и в промышленных масштабах. На работе у меня очень много разных дверей и терминалов, завязанных на мою карту доступа, поэтому пришла идея не таскать везде бейдж, а имплантировать себе чип с кодами бейджа.

Читать далее

Как не развалить команду, когда тебе фигово

Level of difficultyEasy
Reading time9 min
Views17K

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

Когда накатывает сразу много трудностей со всех сторон, легко стать нервным и раздражительным, злым и неэмпатичным. Если же вы менеджер, то в таком состоянии можно утянуть за собой на дно ещё и команду. Шторм отступит, а вы останетесь без неё.

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

Читать далее

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

Reading time15 min
Views18K

В интернете только и разговоров, что про PostgreSQL и MySQL, но выбор СУБД много шире. В этом материале мы рассмотрим несколько популярных баз данных, разберемся с их спецификацией и сценариями использования, чтобы выйти за рамки привычных решений.
Читать дальше →

А давно ли вы измеряли радиацию у себя дома? Делаем дозиметр из Flipper

Reading time9 min
Views15K

У счастливых обладателей Флиппера, прекрасного тамагочи для больших мальчиков и девочек, часто возникает вопрос: что бы ещё к нему подключить? Сегодня расскажу про подключение модуля под названием RadSens для замера радиации. 

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

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

Читать далее

Telegram клиент. TDLib и Spring Boot

Level of difficultyMedium
Reading time11 min
Views19K

Всем привет! В данной статье я хотел бы рассмотреть процесс создания Telegram клиента с помощью кроссплатформенной библиотеки TDLib, Java и Spring Boot.

Читать далее

BASHUI

Level of difficultyMedium
Reading time8 min
Views23K

BASHUI - это BASH + UI, а не то что вы подумали.

Начиная работать над sshto я решил не переизобретать велосипед, вернее не переизобретать велосипед целиком а только некоторые его части и в качестве "рамы с педалями" использовал dialog. Это значительно ускорило разработку, но идея написать свой UI на баше с блекджеком и всем остальным ни на секунду не покидала мой воспалённый мозг. Звёзды сошлись, и я решил воплотить этот проект в жизнь(в bash). Втречайте BASHUI!

нажми на кнопку

Производительность и стабильность Knime на слабых компьютерах

Reading time9 min
Views3K

Наступают времена, когда офисному сотруднику недостаточно знать Word и Excel в качестве минимального обязательного базиса программных продуктов. No‑code/Low‑code платформы и продукты — вот что незаметно становится обязательным для владения каждым. Эти платформы есть самый быстрый на сегодня способ без изучения языков программирования овладеть навыками использования искусственного интеллекта, машинного обучения, анализа big data, причём очень бигдата — на сотни миллионов строк.

Платформа Knime — один из таких инструментов. На первый взгляд это улучшенный Excel+BI. Но, когда посмотришь поглубже его возможности, то, очевидно — это обязательный инструмент будущего, по крайней мере для тех кто не являясь программистом хочет получить навыки как у программиста. Для простоты — Knime это «графическое» программирование. Берёшь квадратики, размещаешь в виде бизнес‑процесса, соединяешь их между собой и оп! — уже провёл анализ маркетингового плана или парсинг сайтов конкурентов или анализ рекламных текстов с помощью NLP. Или, даже строишь приборную доску управления производственного предприятия будучи простым менеджером/инженером. Или ведёшь обработку научных данных.

Knime позволяет, конечно, и код писать, причём на трёх языках Python, Java, R, но это не обязательно. Бизнес‑процессы знаешь, рисуешь? Вперёд!

Разумеется, при работе с огромными массивами данных, требования к компьютерным ресурсам возрастают. И что делать, если вам доступен простенький офисный или домашний компьютер? Или, если вы видите что аренда облачного ресурса на месяц дороже, чем купить компьютер с 64Гб оперативной памяти и процессором гоняющим Atomic Heart или Hogwartz Legacy на среднемалках?

Читать далее

Obsidian: Мой опыт с LYT/Ideaverse и его русификация

Level of difficultyEasy
Reading time6 min
Views19K

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

Читать далее

Использование битовой арифметики для получения наилучших решений задач с LeetCode по скорости и памяти

Level of difficultyMedium
Reading time4 min
Views7.3K

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

Читать далее

Геймдев на Lisp. Часть 1: ECS и металингвистическая абстракция

Level of difficultyMedium
Reading time30 min
Views7.8K

В данной серии практических руководств мы подробно рассмотрим создание несложных 2D-игр на Common Lisp. Результатом первой части станет настроенная среда разработки и простая симуляция, отображающая двумерную сцену с большим количеством физических объектов. Предполагается, что читатель владеет некоторым языком программирования высокого уровня, в общих чертах представляет, как на экране компьютера отображается графика, и заинтересован в расширении своего кругозора.

Common Lisp — язык программирования с богатой историей, предоставляющий эффективные инструменты для разработки комплексных интерактивных приложений, каковыми являются видеоигры. Данная серия руководств ставит перед собой задачу наглядно продемонстрировать ряд возможностей CL, отлично вписывающихся в контекст разработки игровых приложений. Общий обзор таковых возможностей и особенностей Common Lisp приводится в статье Юкари Хафнер "Использование высокодинамичного языка для разработки".

Многие возможности, впервые появившиеся в Lisp, такие, как условный оператор if/then/else, функции как объекты первого класса, сборка мусора и другие давно перекочевали в мейнстримные языки программирования, однако есть одна уникальная возможность, которую мы рассмотрим сегодня, и это — металингвистическая абстракция.

Читать далее

Реальность существует и это надо учитывать

Reading time11 min
Views28K

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

Привет, меня зовут Михаил Елисейкин, я более 20 лет в IT, более 20 лет изучаю историю техники, и сейчас хочу сказать, что эти два профессиональных сообщества объединяю не только я, но и общая распространённая проблема - игнорирование реальности.

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

Читать далее

ChatGPT и чтение книг в оригинале

Level of difficultyEasy
Reading time3 min
Views10K

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

Читать далее

Как мы делаем общие библиотеки

Level of difficultyEasy
Reading time4 min
Views2.5K

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

Читать далее

Позиции восприятия и их применение в дизайне

Reading time6 min
Views2.9K

Всем привет! Меня зовут Александр Аникеев, я работаю старшим дизайнером цифровых продуктов в X5 Tech. 

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

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

Читать далее