Как стать автором
Обновить
125
0
Zada @Zada

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

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

Apache Airflow: делаем ETL проще

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

Привет, я Дмитрий Логвиненко — Data Engineer отдела аналитики группы компаний «Везёт».


Я расскажу вам о замечательном инструменте для разработки ETL-процессов — Apache Airflow. Но Airflow настолько универсален и многогранен, что вам стоит присмотреться к нему даже если вы не занимаетесь потоками данных, а имеете потребность периодически запускать какие-либо процессы и следить за их выполнением.


И да, я буду не только рассказывать, но и показывать: в программе много кода, скриншотов и рекомендаций.



Что обычно видишь, когда гуглишь слово Airflow / Wikimedia Commons

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

Domain-driven design, Hexagonal architecture of ports and adapters, Dependency injection и Python

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

Пролог

- Глянь, статью на Хабр подготовил.
- Эм... а почему заголовок на английском?
- "Предметно-ориентированное проектирование, Гексагональная архитектура портов и адаптеров, Внедрение зависимостей и Пайто..."

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

--

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

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

Мелкая питонячая радость #9: консольные приложения с человеческим лицом

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

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


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


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


image

Читать дальше →
Всего голосов 35: ↑33 и ↓2+31
Комментарии7

Как работает JS: о внутреннем устройстве V8 и оптимизации кода

Время на прочтение11 мин
Количество просмотров157K
[Советуем почитать] Другие 19 частей цикла
Часть 1: Обзор движка, механизмов времени выполнения, стека вызовов
Часть 2: О внутреннем устройстве V8 и оптимизации кода
Часть 3: Управление памятью, четыре вида утечек памяти и борьба с ними
Часть 4: Цикл событий, асинхронность и пять способов улучшения кода с помощью async / await
Часть 5: WebSocket и HTTP/2+SSE. Что выбрать?
Часть 6: Особенности и сфера применения WebAssembly
Часть 7: Веб-воркеры и пять сценариев их использования
Часть 8: Сервис-воркеры
Часть 9: Веб push-уведомления
Часть 10: Отслеживание изменений в DOM с помощью MutationObserver
Часть 11: Движки рендеринга веб-страниц и советы по оптимизации их производительности
Часть 12: Сетевая подсистема браузеров, оптимизация её производительности и безопасности
Часть 12: Сетевая подсистема браузеров, оптимизация её производительности и безопасности
Часть 13: Анимация средствами CSS и JavaScript
Часть 14: Как работает JS: абстрактные синтаксические деревья, парсинг и его оптимизация
Часть 15: Как работает JS: классы и наследование, транспиляция в Babel и TypeScript
Часть 16: Как работает JS: системы хранения данных
Часть 17: Как работает JS: технология Shadow DOM и веб-компоненты
Часть 18: Как работает JS: WebRTC и механизмы P2P-коммуникаций
Часть 19: Как работает JS: пользовательские элементы

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


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

8 самых глупых ошибок менеджмента — на все времена

Время на прочтение10 мин
Количество просмотров5.1K
Добрый день,

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

Перевод статьи Джеффри Джеймса «The 8 Stupidest Management Fads of All Time»

В этой статье перечислены 8 самых отвратительных, самых глупых и неприятных, бесполезных по сути заблуждений в практике менеджмента, которые я когда либо видел на своем опыте. В статье также есть неоценимые советы на тему, как выжить в компании, и пережить данные нововведения — пока они не сойдут на нет. (Что собственно и произойдет — со временем...) Конечно, эти заблуждения уходят, когда на их место приходят новые, но никто и не обещал, что жизнь на работе будет легкой.
Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии19

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

Время на прочтение4 мин
Количество просмотров15K
Cекрет разработки привлекательных интерфейсов заключается в реализме. Ваша задача — придать плоским элементам объём, используя свойства реальных объектов, вроде неровностей и шероховатостей, бликов и теней, различных текстур поверхностей. В идеале они должны выглядеть как предметы на вашем столе. Создавая классный интерфейс, в первую очередь нужно думать не «как», а «почему».
Читать дальше →
Всего голосов 212: ↑205 и ↓7+198
Комментарии49

ASCII глазами обывателей

Время на прочтение1 мин
Количество просмотров21K
Всегда знал, что НЛО — генеральный спонсор Хабра не просто так :)
Видео хорошо раскрывает эту тему и способы контакта с внеземными цивилизациями.

Всего голосов 191: ↑182 и ↓9+173
Комментарии139

Никто ни хрена не знает, что он делает или Три типа знания

Время на прочтение6 мин
Количество просмотров2.1K
Наткнулся недавно за любопытную статью под названием «No One Knows What the F*** They're Doing (or The 3 Types of Knowledge)». Если точнее, то эту статью разослала нам наша менеджер проекта. Представляю вашему вниманию свой перевод этой статьи.
(Я попытался передать экспрессивный заголовок максимально близко — но всё равно не получилось, буду рад предложениям, как можно более точно его передать).

Читать дальше →
Всего голосов 96: ↑87 и ↓9+78
Комментарии35

MikroKopter — HexaKopter. Летающая тарелка с пропелерами. НЛО уже тут.

Время на прочтение1 мин
Количество просмотров1.1K
Вчера наткнулся на очень интересную игрушку. Очень впечатлила маневренность данного аппарата.



Такой штуке можно найти массу применений. Грузоподъемность именно этой модели около 1 кг.
На видео вертолетчик таскает коку литровую и жуЖЖит )

Кому интересно вот ссылка по теме www.mikrokopter.de/ucwiki/HexaKopter
Там есть ссылка на сайт www.mikrocontroller.com, где судя по всему можно купить запчасти и собрать собственный аппарат.
Всего голосов 20: ↑17 и ↓3+14
Комментарии28

Бесплатная регистрация доменов ORG.UA

Время на прочтение1 мин
Количество просмотров691
Событие не из новых. Давно и активно обсуждается.

Собственно тут будет описана лишь регистрация посредством недавно появившейся формы.

Плюсы появления формы – меньше ошибок можно совершить. Жаль конечно, что так и не убрали ограничение на подачу максимум 3 заявок с одного почтового домена. Ну с другой стороны если у вас есть какой-либо домен – открой почту вида my-mail@domain.com и пользуйтесь на здоровье.
Читать дальше →
Всего голосов 18: ↑10 и ↓8+2
Комментарии15

Пол Экман «Психология лжи»

Время на прочтение4 мин
Количество просмотров11K
Пол Экман. Психология лжи
Вероятно, многие видели американский сериал «Lie to me». На бит-торрент трекерах он распространяется под названием «Теория лжи», а первый канал его показывает отчего-то под названием “Обмани меня”. Сериал рассказывает о команде суперпрофессиональных психологов, занимающихся расследованиями самого разного рода: от брачных дел до поимки маньяка-убийцы. Объединяет эти расследования только одно: всегда нужно выявить лжеца, узнать в чем он лжет, что скрывает – и тем самым решить дело. Именно распознавание лжи – профессиональная область героев сериала, именно для решения этой задачи их нанимает ФБР, полиция, пожарные и многие другие.

Однако, немногие видевшие сериал знают, что у доктора Кэла Лайтмана, главного героя, блестяще исполненного Тимом Ротом, есть вполне реальный прототип – выдающийся психолог, профессор Калифорнийского Университета Пол Экман. Манипуляции, микровыражения, техники выявления лжи, столь ярко демонстрируемые в каждом эпизоде, стали известны именно благодаря многолетним исследованиям доктора Экмана и его коллег. В 1985 году он написал книгу «Telling Lie», в которой подробно, почти скрупулезно рассказал о своих работах, разобрал виды и классифицировал признаки лжи, изложил техники выявления обмана в самых различных обстоятельствах: повседневной жизни, уголовных расследованиях и политике. Как оказалось, в закрытых и секретных организациях, вроде ЦРУ, АНБ и ФБР, психологических журналов особенно не читали, а книга, напротив, стала известна, а вместе с ней и её автор. Доктора Экмана начали приглашать для проведения тренингов и семинаров; выяснилось, что люди, стоящие на страже национальных интересов разбираются во лжи ничуть не лучше нас с вами. Т.е. они, как и большинство простых обывателей, думают, что способны выявить обман, но в действительности их результаты в среднем не лучше случайного угадывания, более того они часто просто не знают куда смотреть – таковы результаты исследований Экмана и его коллег.

В 1992 году «Telling Lie» была переиздана и дополнена с учетом опыта работы с секретными службами, а в 2009 году в издательстве «Питер» эта книга вышла в русском переводе под названием «Психология лжи». Найти книгу можно, к примеру, на ozon.ru
Читать дальше →
Всего голосов 24: ↑16 и ↓8+8
Комментарии31

Подбор работы в Рунете

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

После собеседования меня попросили подготовить стратегию развития для сервиса и способы, которыми его можно монетизировать. Незадолго до этого я работала в фонде, инвестирующим в интернет-стартапы, поэтому каким образом с заданием справиться я хорошо представляла. Но! Оказалось не все так просто.
читать далее...
Всего голосов 32: ↑20 и ↓12+8
Комментарии44

Пара слов о Debian на Asus C90s и наглядное пособие по runlevel'ам для новичков

Время на прочтение3 мин
Количество просмотров836
В Debian Lenny на моём ноутбуке практически всё работает «из коробки». Но существует несколько досадных мелочей, об исправлении которых я расскажу.

Начну с того, что существует баг, мешающий нормальной работе с wi-fi на ноутбуках Asus C90s (возможно, что и на некоторых других) с карточкой Intel PRO/Wireless 3945ABG. Суть в том, что через interfaces вафля работает, но если она в этом файле не упомянута, либо не произошло соединения, то wi-fi отваливается напрочь, и поднять его обычными способами не получается. Невозможно использовать network-manager, wicd подключает нестабильно, сильно осложняется работа.
Я с довольно большим трудом нашёл информацию по проблеме, и этот пост — попытка помочь товарищам по несчастью.

Итак, мы имеем отрубающийся при загрузке вайфай, dmesg выводит
iwl3945: Radio disabled by HW RF Kill switch
Alt+F2 не работает, хардварных переключателей на ноутбуке нет.

Решение

Оно оказалось несложным:
$ echo 1 > /sys/devices/platform/asus-laptop/wlan
После этого адаптер сразу включился, о чём сигнализировал загоревшийся светодиод. Но как сделать, чтобы этот костыль работал автоматом?

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

Использование Google static maps

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

Использование Google static maps


В статье рассмотрены основные возможности использования статических карт Google на основе собственного опыта автора.

Google предоставляет два варианта использования своих картографических сервисов.
  • Google maps, базирующийся на JavaScript API, предоставляющий разнообразные возможности для отображения различной географической информации.
    Имеется хорошо продуманная и структурированная библиотека классов, с документацией к которой можно ознакомится по следующим ссылкам:
    English, Русский и поиграться в песочнице
Читать дальше →
Всего голосов 17: ↑14 и ↓3+11
Комментарии13

Карта мировой глобализации

Время на прочтение2 мин
Количество просмотров4.8K
Европейский исследовательский центр в Испре (Италия) при помощи Всемирного банка проделали титаническую работу, составив мировую карту всех автомобильных, железнодорожных, морских и речных дорог на планете Земля. Они рассчитали время движения по каждому из типов транспортных путей, а также внесли задержки на пересечение национальных границ (от 1 до 240 минут) и физический рельеф местности.

В итоге они получили универсальную карту, показывающую, насколько быстро в каждую точку планеты можно добраться от ближайшего города с населением минимум 50.000 жителей (без учёта авиатранспорта). Некоторые результаты исследования вызывают удивление. Оказывается, аж 90% нашей планеты находится в 48-часовой зоне доступности. Даже в таких, казалось бы, «неосвоенных» территориях как Бразилия (с лесами Амазонки), 80% территории находится в этой зоне.



Приводим ещё несколько самых интересных фрагментов карты под хабракатом (почти все картинки кликабельны).
Читать дальше →
Всего голосов 109: ↑108 и ↓1+107
Комментарии40

Притча о кофе

Время на прочтение1 мин
Количество просмотров1.2K
Друзья прислали на меил замечательную притчу. Зацепила! Укрепила моё мироощущение. Решил поделиться ею с хабрасообществом...

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

Когда выпускники разобрали чашки, профессор сказал: «Если вы заметили, все дорогие чашки разобраны. Никто не выбрал чашки простые и дешевые. Желание иметь для себя только лучшее и есть источник ваших проблем. Поймите, что чашка сама по себе не делает кофе лучше. Иногда она просто дороже, а иногда даже скрывает то, что мы пьем. То, что вы действительно хотели, было — кофе, а не чашка. Но вы сознательно выбрали лучшие чашки. А затем разглядывали, кому какая чашка досталась.
Читать дальше →
Всего голосов 66: ↑57 и ↓9+48
Комментарии28

Зачем нам это было нужно или очередной бесполезный ресурс?

Время на прочтение1 мин
Количество просмотров423
Года два назад нам в голову пришла «оригинальная» идея — а не создать ли всем нужный и хороший ресурс, который к тому же еще бы приносил деньги.

Решено начинать с малого и ориентироваться на небольшой рынок байнета. И мы, как нам тогда показалось, сделали хороший выбор направления ресурса — работа. Побродив по байнету и оценив конкурентов было решено не зацикливаться на простом создании резюме и вакансий, а сделать сервис, наиболее приближенный к функционалу HH, тем более на рынок РБ они тогда еще не вышли.
Читать дальше →
Всего голосов 17: ↑15 и ↓2+13
Комментарии11

Интернет-магазин. Начало работы

Время на прочтение8 мин
Количество просмотров19K
Привет, хабранарод!
Писал я давно когда-то про osCommerce небольшую статейку, меня даже просили выложить свою сборку. Если кому она до сих пор нужна — у меня осталась, могу куда-нить положить. Но, наевшись с ОСК, решили написать свою систему. При помощи CakePHP. Об этом хорошо поведал товарищ neudor, с которым на пару мы это дело разрабатывали. В данный момент он несколько отошел от работы с магазином, поэтому я выхватываю у него эстафетную палочку вести цикл статей, посвещенный разработке ПО для интернет-магазина, а также непосредственно организации самой работы, службы доставки, регистрации, налогах. В общем полный FAQ «от и до» — что ждет начинающего предпринимателя, если он решится открыть полностью легальный бизнес в России, с выкладкой затрат в денежном и временном эквиваленте. Итак, сегодня я расскажу о стороне вопроса, не касающейся технической реализации…
Читать дальше →
Всего голосов 66: ↑64 и ↓2+62
Комментарии61

Как нам пересечь подкастеров

Время на прочтение6 мин
Количество просмотров805
Сегодня я хотел бы озвучить и обсудить с вами одну мысль или даже идею. Первый раз она прозвучала в после-шоу Радио-Т #101, но из за специфики этого действа, могло сложиться впечатление, что это очередная шуточка и зубоскальство. Сим спешу вас заверить, что все не совсем так.
Читать дальше →
Всего голосов 101: ↑78.5 и ↓22.5+56
Комментарии55

Информация

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