Pull to refresh
-4
0.2
Евгений Даниленко @JekaMas

Golang и распределенные системы

Как я проверяю Телеграм-каналы перед покупкой рекламы

Reading time 4 min
Views 6.8K

В начале этого года я стал привлекать подписчиков в свой канал, делая прямые закупы в других Телеграм-каналах. Изучил кучу туториалов от «специалистов» на Ютубе, был дважды разведён мошенниками, набил кучу шишек и в итоге во всём разобрался. Основа моего опыта — 250 000 рублей бюджета и реклама в 125 каналах.

Читать далее
Total votes 13: ↑12 and ↓1 +11
Comments 9

Трудности перевода. Как научить микросервисы общаться и не ссориться

Level of difficulty Medium
Reading time 10 min
Views 5.6K

Привет! Меня зовут Саша Сусиков. Я проверяю клавиатуры на прочность около 10 лет из  них последние 2 года с помощью Go. Сейчас я участвую в разработке платформы СберМаркета, где создаю инструменты, которые упрощают жизнь разработчикам. Эта статья для тех, кому предстоит настроить процесс взаимодействия сервисов в компании и вы ищете, как не наломать дров.

Читать далее
Total votes 11: ↑9 and ↓2 +7
Comments 4

Расширяем PostgreSQL с помощью Rust

Level of difficulty Medium
Reading time 5 min
Views 4.2K

Свободная система управления базами данных PostgreSQL не только предоставляет высокопроизводительный движок для выполнения запросов, но и может быть расширена с помощью расширений, которые могут добавлять новые типы данных (например, для ГИС‑расширений или астрономических координат), дополнительные типы индекса и возможности поиска (например, полнотекстовый поиск), сбор статистики, поддержку новых языков для встроенных функций и многое другое. Большой список существующих расширений может быть найден по этой ссылке. В этой статье мы рассмотрим один из возможных вариантов по созданию собственного расширения для PostgreSQL с использованием библиотеки pgx.

Читать далее
Total votes 24: ↑24 and ↓0 +24
Comments 3

Rust vs C#: два способа решить проблему ссылок в структурах

Level of difficulty Medium
Reading time 3 min
Views 9.4K

Возврат ссылки на структуру из метода, объявленную в этом самом методе, является одним из самых классических примеров "висячих ссылок". Но что если возвращается не ссылка, а структура, содержащая ссылку? И не явно, а через вызов другого метода? Как понять, где у нас явный "провис ссылки", а где нормальный код? Звучит как какая то "дичь", но подобный кейс - вполне реальная боль для автором языков программирования.

Давайте посмотрим на примере Rust и C# как авторы решают эту неоднозначную проблему.

Читать далее
Total votes 27: ↑24 and ↓3 +21
Comments 16

Микросервисы — отчуждение от результатов труда

Reading time 15 min
Views 63K

Поветрия

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

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

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

Увы, новые вещи (коих не так чтобы вообще есть) всё чаще приносят с собой и очевидно деструктивные, будто навязываемые извне, паттерны.

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

В этой статье я хотел бы поговорить о причинах происходящего.

Если кому-то интересно - под кат
Total votes 294: ↑226 and ↓68 +158
Comments 1018

Мое первое серебро на Kaggle или как стабилизировать ML модель и подпрыгнуть на 700 мест вверх

Reading time 6 min
Views 9.1K

Привет, чемпион!

Летом прошел чемпионат на Kaggle - "American Express - Default Prediction", требовалось предсказывать - выйдет ли пользователь в дефолт или нет. Табличное соревнование в 5К участников с очень плотным лидербордом.

Вот ведь парадокс, все умеют решать табличные соревнования, все знают, что бустинги "стреляют" точнее всех, но почему-то все равно не все могут забраться в топ лидерборда. В чем проблема?! Мы с командой все-таки смогли забрать серебро🥈 и сейчас я расскажу, как можно было выиграть медаль в этом чемпионате.

Читать далее
Total votes 16: ↑15 and ↓1 +14
Comments 5

Rust в стартапе: поучительная история

Reading time 8 min
Views 14K

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

Я очень долго думал писать ли мне этот пост или нет, потому что я не хочу начинать или быть вовлеченным в холивар про языки программирования (чтобы сразу расставить все точки над "i": Visual Basic самый лучший язык программирования на свете). Но уже несколько людей спрашивали меня про мой опыт с Rust и должны ли они использовать его в своих проектах. В общем, я хочу поделиться своими наблюдениями, какие я вижу достоинства и недостатки Rust в стартапах, когда скорость разработки и легкость масштабирования команды очень важны.

Читать далее
Total votes 54: ↑52 and ↓2 +50
Comments 36

PostgreSQL Antipatterns: простой(?) INSERT… VALUES

Reading time 3 min
Views 16K

Представим, что у вас есть некоторая табличка статистики, куда вы периодически скидываете таймстамп последнего "текущего" состояния в паре координат - например, (ID организации, ID сотрудника).

Как больно наступить на грабли в совсем простом, казалось бы, запросе?

Читать далее
Total votes 43: ↑39 and ↓4 +35
Comments 32

YubiKey головного мозга. Как подружить Ubuntu 22.04.1 LTS c аппаратным ключом безопасности?

Reading time 4 min
Views 8.3K

Итак вы решили переехать на новенькую свежую убунту и у вас на столе лежит Юбик 5ой серии без которого вы не можете жить в современном мире.

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

Читать далее
Total votes 10: ↑9 and ↓1 +8
Comments 11

Golang RPC и все-все-все…

Reading time 6 min
Views 8.3K

Disclaimer: this is not another one gRPC hate article... Oh, wait...

Начнем издалека - знаете, всегда было интересно, а почему, собственно, для golang существует такое большое разнообразие библиотек, для каких-то часто используемых сущностей, как-то - роутеры http (fasthttprouter забыли, как подсказали в коментах) или cache?

С выбором RPC вроде все просто, gRPC - наше всё (вы, кстати, в курсе, что g здесь - это не Google внезапно). Но не тут-то было...

Все просто без ума от Мэри gRPC (нет).

Читать далее
Total votes 18: ↑16 and ↓2 +14
Comments 3

Грокаем функторы

Reading time 6 min
Views 11K

Это перевод статьи из целого цикла постов "Грокаем функциональное программирование" Мэта Торнтона. Я позволил себе немного поменять порядок постов. В оригинале, функторы идут после монад, что мне показалось неверным. Всякая монада - это функтор, но не всякий функтор - это монада. Также я убрал дублирование из поста про монады и добавил необходимые пояснения. Мне нравится практическая направленность материала. Он довольно подробно останавливается на базовых вещах, так что скорее предназначен для тех, кто только знакомится с функциональным программированием.

В этом посте мы постараемся разобраться, что такое функтор собственноручно переизобретая его на рабочем примере.

Читать далее
Total votes 8: ↑8 and ↓0 +8
Comments 11

Онлайн-курс «Введение в теоретическую информатику» от Александра Ханьевича Шеня

Reading time 1 min
Views 16K
Категорически приглашаем всех желающих на онлайн-курс «Введение в теоретическую информатику» Александра Ханьевича Шеня, подготовленный совместно с Computer Science центром и платформой Stepic. Курс начнётся 24 февраля.



Александр Ханьевич — автор многих популярных книг по математике и программированию. Многие его книги и брошюры можно бесплатно скачать с сайта издательства МЦНМО: например, «Программирование: теоремы и задачи» (Шень, 2004), «Лекции по математической логике и теории алгоритмов» (Верещагин, Шень, 2012), «Классические и квантовые вычисления» (Китаев, Шень, Вялый, 1999). Под его редакцией вышел перевод первого издания классического учебника «Алгоритмы: построение и анализ» (Кормен, Лейзерсон, Ривеста, 1990), а также недавнего учебника «Алгоритмы» (Дасгупта, Пападимитриу, Вазирани, 2006).

В общем, у Александра Ханьевича огромный опыт чтения лекций как школьникам, так и студентам и аспирантам. Рассказывает он очень увлекательно и понятно. В онлайн-курсе он даст обзор различных направлений Theoretical Computer Science: криптография, инварианты циклов, вычислимость, переборные задачи, игры, коды, интерактивные доказательства и многое другое (всего в курсе восемнадцать глав!). В курсе будет много задач — как простых (закрепляющих изученный материал), так и более сложных, над которыми придётся поломать голову и тем, кто уже был знаком с теорией.

Будем рады видеть вас среди слушателей онлайн-курса!
stepic.org/104
Читать дальше →
Total votes 30: ↑28 and ↓2 +26
Comments 1

Поиск кратчайших путей в дорожных сетях: от теории к реализации

Reading time 1 min
Views 3.7K
image

В ближайшую субботу Виталий Осипов (Технологический институт Карлсруэ) начнёт читать в Computer Science клубе в Санкт-Петербурге курс по алгоритмам поиска кратчайших путей в графах. В ходе курса будут изучаться и реализовываться алгоритмы, используемые миллионами людей в таких сервисах, как Google/Bing/Yandex карты. Как всегда, вход свободный, регистрация не требуется, приглашаются все желающие.

» Страница курса на сайте CS клуба
Первая лекция: суббота, 5 ноября, 17:20
Место: Математический институт Стеклова, Санкт-Петербург, Фонтанка 27, Мраморный зал (второй этаж)
Total votes 14: ↑8 and ↓6 +2
Comments 1

Международная студенческая школа Recent Advances in Algorithms: Санкт-Петербург, 22–26 мая 2017

Reading time 1 min
Views 3.2K
image

22–26 мая в Санкт-Петербургском отделении Математического института Стеклова РАН пройдёт международная студенческая школа «Recent Advances in Algorithms». Цель школы — познакомить студентов и аспирантов с недавними прорывами в разных областях алгоритмов: от таких классических областей, как потоки в графах и длиннейшие пути в графах, до таких сравнительно недавно возникших областей, как алгоритмы обработки потоковых данных и алгоритмы для многомерных данных. Лекции будут читаться учёными, активно развивающими соответствующие области. Каждый мини-курс начнётся со введения в область и постепенно дойдёт до текущего положения дел в данной области.

К участию приглашаются студенты, аспиранты и молодые исследователи.
Читать дальше →
Total votes 15: ↑15 and ↓0 +15
Comments 0

Бакалавриат СПбГУ

Reading time 2 min
Views 5.5K


К успешно существующему три года при поддержке компании Газпром нефть бакалавриату «Математика» в Санкт-Петербургском государственном университете добавляются потоки «Математика, алгоритмы и анализ данных» и «Современное программирование» при поддержке компаний JetBrains и Яндекс. Планируемая численность:

  • “Математика”, “Математика, алгоритмы и анализ данных”: суммарно 50 бюджетных + 18 бесплатных внебюджетных мест (обучение оплачено Яндексом);
  • “Современное программирование”: 25 мест.

Преимущества образования


Сильные математические курсы

Математические курсы читаются преподавателями и научными сотрудниками Исследовательской лаборатории им. П.Л. Чебышева (научный руководитель лаборатории — лауреат премии Филдса С. К. Смирнов).

Сильные технологические курсы

Программистские курсы будут читаться разработчиками ведущих IT-компаний, в частности, JetBrains и Яндекс. Соответственно, будут даваться актуальные востребованные индустрией знания.
Читать дальше →
Total votes 25: ↑23 and ↓2 +21
Comments 9

Интерактивный учебник для подготовки к алгоритмической секции собеседования

Reading time 2 min
Views 6.7K

Собеседования в крупные IT-компании почти всегда содержат алгоритмическую секцию — даже если вы собеседуетесь на позицию, в работе на которой алгоритмы возникать вряд ли будут. Ниже мы приводим пример задачи, с которой вы можете столкнуться на вашем следующем интервью. Мы расскажем, как эта задача решается, но мы настоятельно рекомендуем вам читать решение только после того, как вы попробуете решить задачу самостоятельно: во-первых, это отличная тренировка; во-вторых, вы лучше запомните решение, если придумаете его сами (не отказывайте себе в этом удовольствии!); в-третьих, даже если вы подумаете над задачей, но не решите её, время не будет потеряно: прочитав потом решение, вы лучше его поймёте и оцените его красоту.

Итак, вот сама задача
Total votes 10: ↑8 and ↓2 +6
Comments 18

Специализация по спортивному программированию на Курсере

Reading time 1 min
Views 4.8K


Исследовательской лабораторией им. П. Л. Чебышева при СПбГУ готовится онлайн-специализация по спортивному программированию на платформе Coursera. В первом курсе специализации даётся мягкое введение в мир спортивного программирования, в последующих четырёх курсах даются углубленные знания по вычислительной геометрии, алгоритмах на графах, числовым алгоритмам, алгоритмам на строках. В специализации будет много задач, максимально похожих на задачи с соревнований. Для самых сложных задач каждой недели будут даваться разборы. Лекции в специализации читаются как профессорами-математиками, так и тренерами СПбГУ и участниками недавних финалов чемпионата мира по программированию (ACM ICPC): Н. А. Вавилов, К. В. Вяткина, С. В. Копелиович, А. С. Куликов, А. Е. Логунов, А. С. Лопатин, А. С. Охотин, В. А. Петров, Ф. В. Петров, К. А. Симонов. Программу помогал составлять Е. Ф. Суворов, задачи — А. А. Толстиков.
Читать дальше →
Total votes 8: ↑7 and ↓1 +6
Comments 18

15 Open Source библиотек для повышения качества данных

Reading time 5 min
Views 10K

Автор этого материала — программист и ML-инженер — собрала Open Source библиотеки Python, которые помогут вам сделать данные лучше, чтобы избежать траты времени и упростить анализ данных. Подборкой делимся к старту курса по анализу данных.

Читать далее
Total votes 6: ↑5 and ↓1 +4
Comments 0

Удивительная история Tether (USDT): люди отнесли $80 миллиардов пластическому хирургу, который не гарантирует их возврат

Reading time 11 min
Views 92K

В попытке избежать санкций Запада и контрсанкций со стороны РФ, многие россияне спешно переводят сбережения в криптовалюту. В этой статье я разбираюсь в финансовой надежности крупнейшего и старейшего стейблкоина USDT (спойлер: к ней есть серьезные вопросы).

Читать далее
Total votes 169: ↑161 and ↓8 +153
Comments 89

Минимальная реализация Lua на Rust

Reading time 24 min
Views 8.6K
После того, как вы освоите это руководство, в вашем распоряжении окажется минимальная реализация Lua (парсер, компилятор, виртуальная машина), написанная на Rust с чистого листа. Этот проект получил название Lust, его код можно найти на GitHub.

Читать дальше →
Total votes 37: ↑35 and ↓2 +33
Comments 11

Information

Rating
2,108-th
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity