Как стать автором
Поиск
Написать публикацию
Обновить
3
0.3

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

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

Advanced Goroutines Patterns в Go: Fan-out, Fan-in и Pipelines

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров2.9K

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

Читать далее

OSINT: подборка инструментов для работы со спутниковыми изображениями

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

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

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

Читать далее

Как анализировать тысячи отзывов с ChatGPT? Частые ошибки и пример на реальных данных

Уровень сложностиПростой
Время на прочтение19 мин
Количество просмотров9.3K

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

Читать далее

Путь 11 страданий: это не ДЗЕН и не ДАО — это выбор российского BI

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров7.2K

Привет, Хабр! Мне, наконец, есть чем поделиться с вами. И это результаты практически годового процесса выбора BI-системы из числа российских разработок на замену одной из западных платформ. За это время мне стало очевидно, что примерно 50% действий, которые мы сделали, можно было и не делать, а 20% не стоило делать вовсе. В итоге получилась практически инструкция “как не надо” выбирать себе BI-систему, если вы хотите, чтобы она действительно начала приносить вам пользу ASAP. Под катом — также мои мысли о том, как надо было бы. Желающих обсудить, прошу присоединяться.

Хочу научиться на чужих ошибках...

Удобства и боли рендеринга с React-pdf: опыт использования

Время на прочтение8 мин
Количество просмотров8.9K
Привет, Хабр! Меня зовут Алексей Сингур, я — фронтенд-разработчик в проекте KICS (Kaspersky Industrial CyberSecurity) for Networks «Лаборатории Касперского». Если коротко, то наш продукт защищает промышленные инфраструктуры и сети от киберугроз: анализирует трафик для выявления отклонений и обнаружения признаков сетевых атак, чтобы обеспечивать предприятию непрерывность процессов.

image

Одной из фичей KICS for Networks является генерация отчетов о сканировании инфраструктуры в формате PDF. При разработке этой фичи пришлось погрузиться в вопрос верстки и рендеринга PDF на Node.js. Речь пойдет об использовании для этих целей библиотеки React-pdf (в нашем проекте мы пока используем версию 2.1.1.), которая может показаться весьма экзотичной, если судить по количеству статей и отзывов в Интернете :)

Пост будет полезен веб-разработчикам для расширения кругозора в области инструментов рендеринга PDF, а также заинтересованным в генерации PDF-документов на стороне клиента или сервера.
Читать дальше →

Световые эффекты на транзисторах и микросхемах

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

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

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

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

Заметки о зубной эмали и зубной пасте

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

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

Материал я собрал, изучая такие сайты, как researchgate.net, sciencedirect.com, www.ncbi.nlm.nih.gov, escholarship.org и другие. Опираясь на эти данные, я занимаюсь разработкой оптимальной рецептуры гигиенической (т.е. не лечебную) зубной пасты, стараясь добиться оптимального баланса между абразивными, антибактериальными и реминерализирующими свойствами (плюс - еще желательно позаботиться об окружающих зуб тканях).

Зачем? 1. Потому что очень интересно; 2. Потому что не хватает этого баланса в современных не лечебных продуктах (лечебные должны работать в одну цель, там совсем иная история в этом плане).

Читать далее

Как правильно отвечать на вопрос “Какие у вас зарплатные ожидания?” на рынке США

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

На первом интервью чаще всего рекрутер может задать вопрос о зарплатных ожиданиях кандидата — “What Are Your Salary Expectations?”. Я принимаю участие в найме продукт-менеджеров, дизайнеров и инженеров и хочу поделиться с вами своим опытом как правильно отвечать на этот вопрос применительно к рынку США.

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

Читать далее

Изящное шестистраничное доказательство. Как возникают случайные структуры

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

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

Когда математики Джефф Кан и Гиль Калаи в 2006 году впервые выдвинули свою гипотезу о «пороге ожидания», они сами в нее не поверили. Их тезис – широкое утверждение о природе математических объектов, именуемых «случайными графами» — казался слишком категоричным, слишком всеобъемлющим, слишком смелым, чтобы претендовать на истинность. Казалось, что он скорее выдает желаемое за действительное, чем отражает математическую истину. Даже с такими оговорками, никто не смог опровергнуть эту гипотезу, и она быстро стала одной из важнейших нерешенных задач в своей области.

Теперь, более 15 лет спустя, двое молодых математиков из Стэнфордского университета сделали то, что, по мнению Кана и Калаи, граничит с невозможным. В В на удивление кратком препринте, выложенном в онлайне всего несколько недель назад, Джинён Пак и Гью Туан Фам дали полное доказательство этой гипотезы.

«Оно получилось поразительно простым и изобретательным», —  сказал Калаи, —  «Завораживающим. Чудесным».

Читать далее

Парсинг контактов адресной книги Яндекс.почты в CSV на Python

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

Как-то в процессе работы возник вопрос как на корпоративном домене в Яндексе выгрузить все контакты организации из адресной книги Яндекс.почты в файл .csv или .xls, чтобы было красиво и потом удобно работать с этими данными в MS Excel.

Оказывается, что стандартными средствами Яндекс.почты можно выгрузить только в Vcard формат, что мне совсем не подходит. Нужно потом его как-то конвертировать сторонними средствами. Такие попадались на просторах интернета, что совсем неудобно.

На помощь пришел Python.

C помощью библиотеки BeautifulSoup очень удобно и быстро парсить html и вынимать всю нужную нам информацию.

Проведя анализ исходного кода страницы и выведя особые закономерности в представлении на ней информации было решено “В бой!”.

Для парсинга нам понадобится Python 3, библиотека BeautifulSoup и браузер с инспектором кода.

Читать далее

Как я «напрограммировал» себе скилл рисования диаграмм в скетч-стиле

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

По работе мне часто приходится рисовать разные схемы, диаграммы процессов и графики, в том числе и те, которые потом используются в качестве иллюстраций для сайта, статей и презентаций. Всё бы ничего, но есть у диаграмм и графиков, сделанных в популярных онлайн-сервисах наподобие draw.io или lucidcharts одна беда — они выглядят как-то слишком уныло и «олдскульно», в духе «90-х». Всю эту инфографику хотелось бы сделать более заметной, привлекательной и душевной (и, желательно, без привлечения дизайнера).

Так у меня возникла идея создания инструмента для отрисовки диаграмм и графиков в стиле «нарисовано от руки». Об истории создания сервиса и «подводных камнях» я расскажу в этой заметке.

Читать далее

Подключение телеграм бота к гугл таблицам

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

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

Читать далее

Неизвестный, положивший конец эпидемиям

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

Александр Иванов

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

Страшные пандемии (всего их за столетие случится семь), возникая одна за одной в долине Ганга, уносили жизни миллионов людей. «Быстрый» XIX век, когда мир стал близким и единым, своими пароходами и колониальными товарами мгновенно разносил заразу по всему миру, и не существовало никакой защиты и никакого противодействия этой болезни.

Хотя про гигиену тогда уже знали: карболка стараниями Рунге, Лорана и Листера была знакома каждому лекарю, но всё же медицина оставалась еще в довольно диком состоянии и перед холерой оказывалась полностью бессильной.

Читать далее

Векторные языки — SQL интерпретатор в 100 строк

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

В предыдущей статье я описал векторные языки и их ключевые отличия от обычных языков. На коротких примерах я постарался показать, как эти особенности позволяют реализовывать алгоритмы необычным образом, кратко и с высоким уровнем абстракции. В силу своей векторной природы такие языки идеально присоблены для обработки больших данных и в качестве доказательства в этой статье я полностью реализую на векторном языке простой SQL интерпретатор. А чтобы продемонстрировать, что программист на векторном языке может писать на векторном языке на любом языке, я реализую тот же самый интерпретатор на Rust. Преимущества векторного подхода столь велики, что даже интерпретатор в интерпретаторе сможет обработать select с группировкой таблицы в 100 миллионов строк за полминуты.

Читать далее

Пиринговые мессенджеры — враг государства?

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


В случае полного отключения интернета одна из главных проблем — общение с товарищами и родственниками. Опыт Гонконга показывает, что для этого хорошо подходят децентрализованные P2P-мессенджеры, которые работают без интернета, используя mesh-сеть по протоколам Wi-Fi Direct, Bluetooth, Apple Multipeer Connectivity Framework, ANT+, LoRa и др.

Для эффективной коммуникации приложение нужно скачать максимальному количеству человек до начала блокады интернета. Иначе придётся искать файлы после блокады. Человек с нужными файлами станет настоящим авторитетом в офисе или в классе (как это было в Беларуси в августе 2020 года — за файлами Psiphon люди реально приезжали из других микрорайонов города).

Вообще, вся история сетей wireless mesh намекает на то, что эта технология крайне не нравится правоохранительным органам.

Всё, о чём должен знать разработчик Телеграм-ботов

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

Вы вряд ли найдете в интернете что-то про разработку ботов, кроме документаций к библиотекам, историй "как я создал такого-то бота" и туториалов вроде "как создать бота, который будет говорить hello world". При этом многие неочевидные моменты просто нигде не описаны.

Как вообще устроены боты? Как они взаимодействуют с пользователями? Что с их помощью можно реализовать, а что нельзя?

Подробный гайд о том, как работать с ботами — под катом.

Читать далее

Перепрошивка ограничивающих убеждений. Прокрастинация или как мотивировать себя на действия

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

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

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

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

Читать далее

Как я победил прокрастинацию, узнал свои истинные желания, поставил четкие цели и достиг их

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

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

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

Это дало мне сильнейший толчок и изменило мою жизнь до неузнаваемости. За прошедшие пять лет я попутешествовал по куче стран, полтора года прожил в солнечной Черногории, переехал в Израиль, несколько раз менял работу на компании с гораздо лучшими условиями, в последний раз устроившись на работу, на которой мой доход в более чем 15 раз превышает мой доход пять лет назад, и на которой я делаю продукты для всемирно известных корпораций и организаций, создал три более-менее успешных open-source проекта на Github и написал множество статей на Хабрахабр, некоторые из которых имели ошеломительный успех у читателей.

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

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

Читать далее

Что такое soft skills для инженера в 2020 году, зачем и как компании их проверяют на собеседованиях

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


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

Именно подобные вопросы позволяют оценить так называемые гибкие навыки (soft skills) инженеров. История собеседования в Facebook меня сильно заинтересовала, поэтому я решил изучить тему soft skills, их проверки и тренировки поподробнее. Бонусом прикладываю список полезных ресурсов и статей, на которые наткнулся в процессе подготовки материала. Поехали!
Читать дальше →

Начать заниматься роботами должно быть просто

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров14K

Введение


Это руководство в первую очередь предназначено для тех, кто хочет начать заниматься программированием и созданием роботов, но не знает куда идти дальше после мигания светодиодами на Arduino.

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

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



Интересно? Тогда начнём.
Читать дальше →
1

Информация

В рейтинге
3 368-й
Зарегистрирован
Активность