Обновить

Все потоки

Сначала показывать
Порог рейтинга

Low Cost Engineering как метод бережливого производства в технологическом стартапе

Canvas *Data Engineering *Управление продуктом *Управление проектами *Управление разработкой *
Recovery mode
Из песочницы

Тот, кто не готов внедрять новые решения, достаточно скептично относится к такой формулировке как Low Cost Engineering, считая, что создание прототипа – это огромные затраты. Опытные же инженеры все чаще используют данную концепцию как один из инструментов бережливого производства.

Читать далее
Всего голосов 1: ↑0 и ↓1 -1
Просмотры 167
Комментарии 0

Новости

Подсчет количества пар товаров в продуктовых чеках с помощью трех инструментов: Python, Spark, SQL

Python *SQL *Big Data *

Добрый день, уважаемые читатели! Не открою для большинства секрета, если скажу, что большая часть задач в материалах к учебным курсам сформулирована шаблонно. Какие-то вопросы в принципе могут представлять интерес, но очень оторваны от реальных потребностей бизнеса. Какие-то моменты выдернуты из книг, поэтому лучше знакомиться с ними, читая первоисточник. Но есть кейсы, которые на первый взгляд хоть и кажутся простыми и стереотипными, но, если присмотреться к ним более пристально, могут дать пищу для размышления. Вот на одной из таких полезных задач мне хотелось бы заострить внимание в данной заметке. Формулируется вопрос следующим образом: «Необходимо определить количество пар товаров в продуктовых чеках. Вывести 10 самых частых сочетаний». Пример, чек 1 содержит товар 1, товар 2, товар 3, а чек 2 -  товар 1, товар 2, товар 5. Следовательно, комбинация «товар 1, товар 2» встречается 2 раза, «товар 1 , товар 3» один раз и т.д.

В исходнике решать данный кейс предлагалось силами Python. Но реальная жизнь может потребовать от аналитика данных умения выполнять данное упражнение как с помощью SQL, так и Spark. Следовательно, рассмотрим три подхода, оставив за скобками разговора четвертый вариант – расчеты на платформах BI.

Читать далее
Рейтинг 0
Просмотры 461
Комментарии 0

На Восток

IT-эмиграция Будущее здесь IT-компании

Раз уж я застрял в китайской командировке давайте я вам расскажу немного о Китае и китайцах. Тем более, что в ближайшие годы нам, по всей видимости, придется все больше с сотрудничать. Налаживать с ними отношения непросто, но можно. Сложность в том, что мы очень привыкли к западной культуре. А Восток –абсолютно другой. Выделю три ключевых принципа, которые помогают мне понимать их мышление и логику. Первое  - это огромная плотность населения, на юго-востоке Китая она раз в 100 выше чем в России. И этот момент определяет многое в сознании китайцев. Нам гораздо проще общаться с амерами и европейцами не в силу языкового или религиозного сходства, а именно потому что плотности населения примерно одинаковы. Второе -  Запад индивидуалистичен, а Восток – коллективен. И третье – Запад вербален, а Восток – невербален. Слова здесь дешевы и могут ничего не значить, а вот дружба (если сложится) ценится выше. У китайцев своеобразное понятие о чести (несколько отличающиеся от нашего), но придерживаются они его свято. Я еще по “развеселым 90м” усвоил – людям с Востока можно доверять. Они не прощают предательства, но если ты им верен –пойдут за тебя в огонь и воду. Итак, по пунктам

Язык.

Очень сложный. Принципы построения абсолютно другие. Иероглифы – это скорее некие символы и образы, а не просто буквы. И этими символами китайцы как-то оперириуют. Дополнительная сложность в том, что смысл зависит от тональности. Одни и те же слова могут иметь совершенно разное значение, в зависимости от того, как они произнесены. Для того чтобы выучить китайский может и двух лет не хватить. Это не английский, который я за пару месяцев выучил. Тут я за долгое время выучил штук 20 иероглифов, а для того чтобы хоть как то общаться надо примерно 500. Всего же их около 5000. Не сказать, чтоб я сильно в этом отношении напрягался, и напрасно. По-английски в Китае не говорит почти никто. Радостное исключение – девчонки на ны Reception в отеле. Поэтому многие вопросы (заказ еды, составление маршрутов) решаются через них. :) C остальными приходится общаться на пальцах (мальчик жестами обьяснил что его зовут Хуан :)).  Или через переводчик на телефоне. Он позволяет хотя бы читать и писать. Но вот местные диалекты, ему часто не под силу. Так что на изучение китайского надо налечь – занятие крышесносящее но увлекательное :) Тем более, что в ближайшие несколько лет знание языка даст огромные преимущества.

Читать далее
Всего голосов 24: ↑19 и ↓5 +14
Просмотры 3.1K
Комментарии 19

Минуточку внимания

О судьбе отечественного оборудования для сетей 5G. Часть V Точка бифуркации

Сетевые технологии *Беспроводные технологии *Стандарты связи Сетевое оборудование Сотовая связь

И снова здравствуйте!

Первая часть. Обзор Рынка

Вторая часть. Внешние и внутренние противоречия

Третья часть. Основные действующие лица

Четвертая часть. Что есть базовая станция 4G/5G

Не думал я, что, когда начну свой скромный анализ ситуации с импортозамещением оборудования для сетей 5G, события будут развиваться так быстро: начало «специальной военной операции», введение «адских» санкций, звучащие предсказания еще более тектонических мировых изменений. Кроме того, вскрылись во всей красе фундаментальные риски российской экономической политики в области микроэлектроники (и не только), обозначенные нами в прошлом материале.

После первого шока от происходящего сейчас давайте взглянем на то, что было сделано со стороны государства и участников рынка на ниве создания отечественных базовых станций 4G/5G и каковы дальнейшие (если они есть) перспективы, учитывая новые ограничения.

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

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 1.1K
Комментарии 3

Как я оклад 2х хотел

Карьера в IT-индустрии Биографии гиков Интервью
Из песочницы

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

Читать далее
Всего голосов 16: ↑9 и ↓7 +2
Просмотры 7.2K
Комментарии 5

Firefox OS снова в строю. Ну, почти — встречаем Capyloon, новую инкарнацию операционной системы от Mozilla

Блог компании Selectel Firefox Смартфоны Софт

Вчера в сети появилась новость о выходе экспериментальной версии операционной системы, которая называется Capyloon. Она базируется на web-технологиях и идеях давно уже закрытого проекта Firefox OS, B2G (Boot to Gecko). Человеком, который решил попробовать все снова, стал Фабрис Дезре (Fabrice Desré). И это вовсе не случайно, поскольку Дезре был главой команды разработчиков Firefox OS до момента завершения неудавшегося опыта Mozilla. Кроме того, он еще и главный архитектор компании KaiOS Technologies, компании, которая продолжает работу над KaiOS, операционной системой, которую можно назвать форком Firefox OS. О подробностях — под катом.
Читать дальше →
Всего голосов 8: ↑8 и ↓0 +8
Просмотры 2.8K
Комментарии 4

Будущее музыки за объемным звуком — обсуждаем мнения

Блог компании Аудиомания Исследования и прогнозы в IT Периферия Звук Будущее здесь

Музыкальное сообщество давно экспериментирует с пространственным звучанием. Рассказываем, как обстоят дела в этой нише, и кто что думает на этот счет.

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 1.1K
Комментарии 9

Что такое Netcat? Bind Shell и Reverse Shell в действии

Информационная безопасность *Системное администрирование *
Tutorial

Друзья, всех приветствую!

В этой статье мы поговорим о том, что такое Netcat и с помощью него реализуем Bind и Reverse Shell соответственно.

Netcat

Netcat, впервые выпущенный в 1995 году (!), является одним из "оригинальных" инструментов тестирования на проникновение в сеть. Netcat настолько универсален, что вполне оправдывает авторское название "швейцарский армейский нож" хакера. Самое четкое определение Netcat дают сами разработчики: "простая утилита, которая считывает и записывает данные через сетевые соединения, используя протоколы TCP или UDP".

Подключение к порту TCP/UDP

Как следует из описания, Netcat может работать как в режиме клиента, так и в режиме сервера. Для начала давайте рассмотрим клиентский режим. Мы можем использовать клиентский режим для подключения к любому порту TCP/UDP, что позволяет нам: Проверить, открыт или закрыт порт или подключиться к сетевой службе.

Давайте начнем с использования Netcat (nc), чтобы проверить, открыт ли порт 80 на тестируемой машине (в качестве тестируемой машины мы будем использовать основную машину на которой установлена ВМ !!!).

Мы введем несколько аргументов: опцию -n, чтобы отключить DNS и поиск номеров портов по /etc/services; -v для вывода информации о процессе работы; IP-адрес назначения; и номер порта назначения:

P.S. Чтобы узнать IP-адрес основной машины выполните команду ipconfig в командной строке если у вас основная машина Windows, и ifconfig если у вас Linux или MacOS.

Читать далее
Всего голосов 6: ↑4 и ↓2 +2
Просмотры 1.5K
Комментарии 2

Разница между двумя строками

Тестирование IT-систем *Python *Тестирование игр *
Recovery mode

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

Стандартный вариант

Читать далее
Всего голосов 10: ↑2 и ↓8 -6
Просмотры 1.7K
Комментарии 5

Баг в ядре Linux и как правильно жаловаться

Open source *Системное программирование **nix *C *Параллельное программирование *

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

Я отвечаю за поддержку одной из наших библиотек с C-интерфейсом, написанной на C и C++. Мой коллега из другого отдела сообщил, что его нагрузочный тест нашей библиотеки на C# в Linux выдаёт ошибку в хитром сценарии: нужно иметь два процесса по пять потоков, делающих некоторые идентичные вызовы. Если процесс один, а потоков много, то проблема не проявляется. Если процессов два, но в каждом по одному потоку, то проблема не проявляется. Путём просмотра исходников нагрузочного теста и логов работы библиотеки удалось перенести проблему в маленький юнит-тест на C++ с использованием нашего API.

Узнать, что же это было
Всего голосов 28: ↑26 и ↓2 +24
Просмотры 3.9K
Комментарии 4

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

Восстановление данных *C *Реверс-инжиниринг *
Давным-давно, когда не было современных гаджетов и интернетов, большинство пользователей компьютеров слушали музыку «оффлайн» при помощи различных проигрывателей. Один из самых популярных и распространённых – Winamp.
Читать дальше →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры 1.1K
Комментарии 6

Экономическая модель для ММО

Анализ и проектирование систем *Разработка игр *Алгоритмы *Прототипирование *Криптовалюты

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

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 1.9K
Комментарии 10

Лебединая песня: не уходи молча

Управление персоналом *Карьера в IT-индустрии Читальный зал

Все хотят повышения зарплаты. Как правило – себе. Это совершенно нормально – своя рубашка ближе к телу. Бывает, что один добивается повышения себе, а прицепом достаётся и остальным. Однако, как вы, наверное, знаете, так случается не очень часто – счастливчика обязательно попросят никому ничего не рассказывать.

Собственно, это одна из причин жуткой нелюбви начальников к индивидуальным договорённостям по зарплате. Тот же Артемий Лебедев давно говорил, что запретил сотрудникам рассказывать друг другу, кто сколько получает – обязательно кто-нибудь придёт и скажет «а чё он больше получает?».

Вторая причина ещё банальнее: для начальника повышение зарплаты одному человеку – довольно жуткий геморрой (если он не собственник, разумеется). Чем больше компания и ниже начальник, тем процесс сложнее. Проситель-сотрудник автоматом превращает в просителя самого начальника. Тот должен идти и просить чуть ли не для себя. В ответ, с высокой вероятностью, начальник получит лекцию о собственной некомпетентности, неумении «строить команду» и использовать нематериальные методы мотивации. Вон Коля, начальник соседнего отдела, молодец – просто купил три настолки, и никто больше не ноет.

Теперь давайте зайдём с другой стороны и посмотрим на реальную статистику не индивидуальных, а массовых улучшений условий труда – и зарплаты, и всего прочего. Когда, почему, в какой момент они чаще всего случаются? Не будем рассматривать сказки о великих гигантах, которые просто индексируют зарплату на уровень инфляции. Посмотрим на что-нибудь более приземлённое.

Читать далее
Всего голосов 26: ↑18 и ↓8 +10
Просмотры 5.8K
Комментарии 17

Эволюция DevOps

DevOps *

15 лет назад DevOps начинался в попытке “подружить” разработку и эксплутацию — через культуру, обмен знаниями и совместную работу. Затем быстро развернулся в сторону ускорения поставки изменений из разработки в продакшн (активность Lean Value Stream Mapping), продолжился в понимание того, что программисты создают не просто код в репозитории (и даже не протестированный код в репозитории), а работающее приложение в продакшне (практики Observability и SRE). И последние несколько лет DevOps перешел к рассмотрению взаимодействия команд на масштабе (фреймворк Team Topologies).

Что при этом менее заметно, так это происходящая одновременно с этим эволюция корпоративной архитектуры:

Читать далее
Всего голосов 6: ↑3 и ↓3 0
Просмотры 2.7K
Комментарии 3

Разбираем алгоритмы компьютерной графики. Часть 5 – Анимация «Shade Bobs»

Python *Программирование *Компьютерная анимация *Демосцена
Tutorial

Алгоритм, который рассмотрим сегодня, не имеет нормального названия. Иногда его называют "Shade Bobs", а вообще это один из многочисленных алгоритмов генерации "плазмы". Когда что-то на экране видоизменяется и переливается.

Из множества алгоритмов "плазм", представленный экземпляр самый элементарный.

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

Основы работы отечественных МК 1986ВЕ1Т с болгарскими отладчиками OLIMEX ARM-USB-OCD-H. Часть 2 — RAM & Interruptions

Отладка *C *Программирование микроконтроллеров *Процессоры
Tutorial

Изначально вторая главазадумывалась только, как шпаргалка по работе из оперативной памяти, но делать и разбираться в этом не очень трудно. Основная "запара" может настигнуть несведущего именно при работе с прерываниями. Собсна, решено объединить.

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

Как создать telegram бот на C# быстро?

.NET *C# *
Из песочницы

Как создать telegram bot на C# быстро?

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

Читать далее
Всего голосов 19: ↑12 и ↓7 +5
Просмотры 6K
Комментарии 5

Материализованные представления и ReplacingMergeTree в ClickHouse

SQL *

В этой статье будут описаны подводные камни, на которые я натыкался при использовании одновременно материализованных представлений и движка ReplacingMergeTree в ClickHouse (далее CH). Для опытных пользователей CH эта информация возможно будет уже не новой, но надеюсь, что смогу сэкономить много времени тем, кто недавно начал свое знакомство или только готовится начать.

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

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

Нейросетевой подход к моделированию транзакций расчетного счета

Блог компании Альфа-Банк Big Data *Машинное обучение *Искусственный интеллект Natural Language Processing *
Из песочницы

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

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

Читать далее
Всего голосов 6: ↑5 и ↓1 +4
Просмотры 952
Комментарии 0