Pull to refresh
5
0
Send message

Первый тролль, лжец и бонвиван эпохи Возрождения

Reading time10 min
Views21K

Представьте, читатель, себе журналиста. Не мелкого жёлтого писаку, а настоящего прожжённого журналюгу, способного движением пера подчеркнуть или вычеркнуть что угодно в масштабе общества. Неутомимый, скользкий, пронырливый и всеми буквально ненавидимый — да, именно о таком человеке сегодня поговорим. Что в этом особенного, спросите вы? О, просто он был первым.

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

Читать далее
Total votes 94: ↑87 and ↓7+98
Comments19

Клавиатура Charachorder: новое слово в вопросе ввода текста или странное изобретение?

Reading time4 min
Views36K

Мы в Selectel любим клавиатуры хорошие и разные. Вот, например, обзор кастомной клавиатуры Lily58 Pro. Вскоре опубликуем еще один обзор кастомной клавиатуры, еще более эргономичной, чем Lily. Но даже они ни в какое сравнение не идут с тем, что предлагает команда создателей устройств ввода Charachorder.

Они создали два девайса — одно из них похоже на клавиатуру, и, фактически, является ею, хотя и называется «аккордная клавиатура». А вот второе не похоже ни на что. Давайте посмотрим, что это за системы и обсудим их возможности и потенциал.
Читать дальше →
Total votes 65: ↑65 and ↓0+65
Comments27

10 важных книг 2021 года

Reading time6 min
Views54K

Подвожу итоги уходящего книжного года и выбираю самые достойные новинки. 

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

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

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments13

Три архитектуры эльфам, семь гномам, девять людям… где же искать ту, что объединит их все?

Reading time60 min
Views29K

Проводится сеанс разоблачения магии (CISC, RISC, OoO, VLIW, EPIC, ...).
Без традиционной рубрики “а что, если” тоже не обошлось.

Добро пожаловать под кат, правда, лёгкого чтения ожидать не стоит.

Читать далее
Total votes 141: ↑141 and ↓0+141
Comments55

Управляем генерацией ruGPT-3: библиотека ruPrompts

Reading time7 min
Views12K

Наше семейство моделей ruGPT-3 уже нашло множество применений у сообщества: кто-то генерирует гороскопы, кто-то — факты о лягушках, статьи нейроуголовного кодекса, нейроновости и прочее. Модели накопили в себе массу знаний о нашем мире и способны подстроиться практически под любую задачу. Тем не менее, в данный момент подобная подгонка (fine-tuning) часто требует значительных вычислительных затрат, что не всегда позволяет использовать достаточно большие модели. В этом посте мы предлагаем сообществу новый инструмент для того, чтобы дообучать ruGPT-3 под свои нужды и делиться своими результатами с другими.

Читать далее
Total votes 17: ↑16 and ↓1+22
Comments13

Не уйти ли из айти?

Reading time10 min
Views98K

Пока все кому не лень пишут статьи о том, как войти в айти, некоторые из нас нет-нет, да задумываются, а не выйти ли оттуда. Ночные релизы, бесконечные переработки, легаси код, невнятные баги, грубые разговоры в курилках и в коридорах, постоянные требования от менее технически подкованных коллег, иногда целые блоки кода, а то и сборки, отправленные в корзину… Выгорание? Жажда новой жизни? А вдруг там, за дверью серверной или опенспейса R&D, всё по-другому? 

Читать далее
Total votes 125: ↑101 and ↓24+112
Comments340

Мифология и реальные методы прагматичного программирования

Reading time12 min
Views21K

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

Меня зовут Кирилл Мокевнин, и я — сооснователь школы программирования Хекслет. За последние пару лет я провел собеседования с более чем 400 человек, потенциальными наставниками по совершенно разным направлениям в разработке. В результате у меня собралась большая выборка наблюдений, которые мы и разберем в этой статье.

Читать далее
Total votes 59: ↑54 and ↓5+64
Comments27

Войти вайти в 37 лет, личный опыт

Reading time11 min
Views47K

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

В школе у нас был компьютерный класс...
Total votes 57: ↑48 and ↓9+52
Comments77

Приключения микропроцессора в СССР: 8 бит

Reading time13 min
Views48K

Мы живем в удивительное время: компьютеры окружают нас со всех сторон. Любимый смартфон, ноутбук на работе, медицинские приборы, браслеты и часы. Умные рекламные табло, самокаты и автомобили. 

В основе каждого такого устройства лежит тот или иной микропроцессор. А простой микрокомпьютер размером со спичечный коробок (на базе Atmega или STM32) можно положить в карман или установить в качестве дверного звонка. Мы живем в будущем, не особенно-то его замечая. Но до начала 1980-х ни один советский радиолюбитель даже мечтать не мог о домашнем персональном компьютере.

Сегодня мы попробуем взглянуть на первые микропроцессоры, применявшиеся на территории нашей страны. Первая статья нашего небольшого цикла будет целиком посвящена 8-битным CPU, которые так или иначе выпускались на территории Советского союза и СНГ.

Читать далее
Total votes 68: ↑66 and ↓2+83
Comments137

Автоконфигурируемость ETL: как мы сделали ETL устойчивым к постоянным изменениям в структуре входных данных

Reading time6 min
Views4.8K

Типичный диалог на планировании:
Лид:  
— Пользователи просят репликацию вот этих колонок в этих таблицах из продакшен базы в data lake.
Разработчик: 
— Когда?
Лид:  
— Вчера.

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

Всем привет! Меня зовут Семен Путников, я — инженер данных в DINS. Я работаю в команде, которая участвует в разработке инструментов управления и анализа больших данных для RingCentral. Под катом история о том, как мы решили проблему частой миграции данных для наших ETL и радуем пользователей быстрыми ответами на их запросы.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments4

Python и чистая архитектура в 2021 году

Reading time11 min
Views24K

Прошло уже почти 3 года с тех пор, как я впервые воспользовался чистой архитектурой на практике. С тех пор я побывал на многочисленных конференциях, где выступал с докладами на эту тему (вот, например, доклад Clean Architecture in Python с конференции PyGotham 2018). Кроме того, я написал статью о чистой архитектуре на Python, которая попала в рассылку RealPython.com … но сейчас заканчивается 2021 год, и мы ушли далеко вперед. Давайте рассмотрим, как развился Python, изучим разные крутые библиотеки, благодаря которым реализовывать чистую архитектуру на Python сегодня стало гораздо проще.

Сначала вспомним о том, зачем она нужна.

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

Практические рекомендации по работе с Docker для Python-разработчиков

Reading time28 min
Views96K

Прим. Wunder Fund: в этой длииинной статье вы найдете ряд полезных советов по работе с Docker, как общего характера, так и Python-специфичных. Хоть мы и давно используем Docker в работе, про некоторые советы мы подумали "а что, так можно было?". Советуем вначале пролистать статью, и отметить штуки, которые покажутся актуальными для вашей текущей ситуации.

Читать далее
Total votes 53: ↑52 and ↓1+65
Comments8

Используем контейнеры Podman вместо виртуальных машин

Reading time2 min
Views11K

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

Контейнеризация — эффективный способ виртуализации на уровне ядра ОС. В системах контейнеризации гипервизора нет, но есть Container Engine, который создаёт контейнеры и управляет ими. В качестве движка контейнеризации мы будем использовать Podman.

Почему не Docker?

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

Большинство традиционных сетей контейнеров обрабатываются мостами bridge, преобразованием сетевых адресов (NAT) или путем привязки к сети хоста. Если вы хотите, чтобы ваши контейнеры выглядели как физические хосты в вашей сети и каждый с уникальным MAC-адресом, то самый простой способ — это использовать плагины macvlan и dhcp, которые поставляются с пакетом containernetworking-plugins.

Читать далее
Total votes 11: ↑8 and ↓3+6
Comments7

Как повысить безопасность Docker-контейнеров

Reading time7 min
Views14K

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

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

Читать далее
Total votes 16: ↑15 and ↓1+17
Comments4

Главный секрет операторов match/case в пайтоне

Reading time2 min
Views14K

Не так давно увидела свет версия языка пайтон 3.10. В ней был добавлен pattern matching statement (оператор сопоставления с шаблонами). Как гласит официальное описание этого оператора в PEP622, разработчики в большей мере вдохновлялись наработками таких языков как: Scala, Erlang, Rust.

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

Читать далее
Total votes 27: ↑23 and ↓4+26
Comments24

Карта гулябельности Санкт-Петербурга

Reading time10 min
Views36K

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

Читать далее
Total votes 67: ↑64 and ↓3+84
Comments106

SQL в SQLAlchemy

Reading time14 min
Views52K

Меня зовут Алексей Казаков, я техлид команды «Клиентские коммуникации» в Домклик. По моему опыту подавляющее большинство приложений, взаимодействующих с базой данных, использовали для этого Object Relational Mapper. В этой статье я продолжу знакомить вас с популярными ORM, которые встречались мне в продовых проектах. На очереди всемогущий SQLAlchemy.

Читать далее
Total votes 28: ↑25 and ↓3+26
Comments6

Как я сжимал модель fastText для реальной задачи в 80 раз в 2021 году

Reading time3 min
Views4.2K

FastText — это отличное решение для предоставления готовых векторных представлений слов, для решения различных задач в области ML и NLP. Но основным недостатком данных моделей является, то что на текущий момент обученная модель FastText на русскоязычном корпусе текстов Википедии занимает немногим более 16Гигабайт, что в значительной мере сужает возможности использования данной технологией.

На просторах хабра вы уже найдете примеры такого сжатия описанные ранее «Давидом Дале» в статье «Как сжать модель fastText в 100 раз». Решая эту задачу, а применял рекомендации из данной статьи, и к ним мы еще вернемся, но эта статья уже несколько потеряла свою актуальность, так как часть используемых методов более не работают в новой версии библиотеки Gensim 4.0. Кроме того, применяемый в данной статье имеет более общий характер применения, так как сжатая данный образом модель все же не рассчитана на решение узкой задачи, и как показала практика при решении более узких задач, модель теряет в качестве более существенно, чем это показано на примерах.

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

Основная суть примененного мною метода, была в том, чтобы исключить из словаря модели FastText не используемые слова. Так как например модель «wiki_ru», содержит в своем корпусе 1,88 млн слов в словаре, и 2 млн n-грамм токенов, (300 мерных) векторов.

Читать далее
Total votes 10: ↑10 and ↓0+10
Comments4

Разрыв между производством и потреблением данных

Reading time9 min
Views2.3K

Думаю, многие согласятся, что современный русский язык находится под постоянным давлением со стороны английского в части заимствований. Мы уже обыденно произносим и понимаем фразу типа «когда юзер пытался залогиниться через АДэ, в браузере что-то заглючило, надо винду ребутнуть, наверное». Так получается короче, быстрее, но, кажется, это может плохо кончиться в итоге. Эллочка-людоедка, новояз Оруэлла и бейсик-инглиш Огдена, ю ноу. Корень проблемы в корнях. И мы теряем корни в буквальном смысле слова. Свои корни теряем, а чужие нам не позволяют правильно понимать смысл слов. Поясню на примере.

О чём говорят люди, когда обсуждают Data Governance и Data Management на русском? Давайте разбираться.

Есть в английском два слова примерно об одном и том же: «governance» и «management». При этом «governance» однокоренное с «government» (правительство). Аналогично, в русском языке есть два самых употребляемых слова на эту тему: «управление» и «руководство». При этом, «управление» — однокоренное со словом «правительство». Кроме того, слово «management» восходит к латинскому «manus» (рука), а «руководство» прямо содержит в себе корень слова «рука».

С точки зрения корней, логично переводить «governance» как «управление» (отсылка к «правительству»), а «management» как «руководство» (отсылка к «руке»).

А с точки зрения взаиморастворения культур не всё так однозначно, ибо у них есть «data management» и отдельно «data governance», и всем понятно, что это разные вещи. Там люди чётко понимают, что «governance» выше, чем «management». А у нас редкий человек объяснит, чем «управление» отличается от «руководства». Вот и получается, что использовать Data Governance и Data Management в русском очень трудно, особенно так, чтобы тебя поняли.

Читать далее
Total votes 6: ↑4 and ↓2+5
Comments6

Как мы развернули коммунальный Apache Airflow для 30+ команд и сотни разработчиков

Reading time9 min
Views9.4K

О том как мы внедряли Apache Airflow для использования различными командами в нашей компании, какие задачи мы хотели решить этим сервисом. Внутри описание архитектуры деплоя и наш Infrastructure as Code (IaC).

Читать далее
Total votes 7: ↑6 and ↓1+6
Comments7
1
23 ...

Information

Rating
Does not participate
Registered
Activity