Search
Write a publication
Pull to refresh
-12
0

Системный инженер

Send message

Помощь многим: Android-приложение для людей с особыми потребностями

Reading time6 min
Views3.3K

Приветствую всех! Я Беглецов Глеб, учусь в 11 классе, летом прошлого года закончил программу “IT Школа Samsung” в г. Санкт-Петербург на площадке ФМЛ 239 под руководством Левина Михаила Константиновича. В качестве выпускной работы я разработал приложение, которое назвал “Parus”. Это мой первый большой проект под Android, и он мне принес  ГРАН-ПРИ финала Всероссийского конкурса IT Школы Samsung (ролик). Хочу поделиться историей создания этого проекта.

Читать далее

Через тернии к CVE: как зарегистрировать уязвимость, если у компании нет Bug Bounty

Reading time11 min
Views3.6K

Автор: Иннокентий Сенновский (rumata888)


Хочу поделиться опытом регистрации уязвимостей в продуктах компаний без Bug Bounty. У меня этот процесс занял целых два года, в течение которых я общался с вендорами, боролся с недопониманием и стучался в MITRE.


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



Photo credit: https://www.deviantart.com/heroeswho

Читать дальше →

Умный print для C

Reading time3 min
Views20K

Для тех кто пишет на С, возможно, будет интересно как мне удалось создать умную функцию print(), в которую можно кидать переменные любого типа — дженерик print.

show me the code

Модульный ноутбук Framework, почти все элементы которого можно апгрейдить, поступит в продажу уже летом

Reading time2 min
Views29K

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

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

Одноплатник Pimoroni Tiny 2040 — улучшенный аналог Raspberry Pi Pico, размером всего в треть «малинки»

Reading time3 min
Views18K

В январе мы публиковали обзор одноплатника Raspberry Pi Pico. В целом, соотношение цена/качество на высоте. Но многим пользователям платы не хватает дополнительных функций.

И вот сейчас появилась альтернатива, причем на основе SoC Raspberry RP2040, но с большим набором возможностей (забегая наперед — это не модуль беспроводной связи). Плюс ко всему, размер новинки всего третья часть от Raspberry Pi Pico. Называется это чудо технической мысли Pimoroni Tiny 2040.
Читать дальше →

Мои выводы после 15 лет работы разработчиком

Reading time6 min
Views17K

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

Приятного чтения!

Альтернатива электронной почте для 21 века

Reading time7 min
Views24K

Специализированный мини-компьютер IMP соединял между собой участников сети ARPANET в 1969 году, прообраз современных маршрутизаторов и символ древности SMTP. Фото: Fred Prouser / Reuters

Электронная почта — очень старая технология. Протокол Simple Mail Transfer Protocol (SMTP) впервые описан в RFC 821 (1982 год), а его основой стали технологии 1970-х. В те времена никто не мог представить, какие проблемы возникнут в будущем из-за открытости протокола.

Сейчас электронная почта — рассадник спама и главное оружие киберпреступников. Большинство кибератак начинается с проникновения в сеть через фишинг. Жертву изучают — и направляют ей таргетированное письмо с обращением по имени, должности, с указанием деталей личной жизни, после чего искусно убеждают открыть приложенный файл. Многие соглашаются и открывают (например, см. проверку персонала в GoDaddy и GitLab). SMTP идеально подходит для социальной инженерии.

Поэтому программист Лиам Брек (Liam Breck) придумал безопасную и современную альтернативу электронной почте — это сеть MNM (расшифровывается как mnm is not mail), сайт сейчас не справляется с нагрузкой, вот кэш в Google.
Читать дальше →

Системный гайд по созданию White Label android-приложений

Reading time13 min
Views8.8K

Как написать код один раз, а продать 20 мобильных приложений? Я нашёл ответ путём проб и факапов и разложил свой опыт по пунктам: из статьи вы узнаете, как безболезненно реализовать White Label android-проект.

Читать дальше

Как преобразовать текст в речь с использованием Google Tesseract и Arm NN на Raspberry Pi

Reading time9 min
Views4.7K

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

Приятного чтения!

Как реализовать drag&drop на чистом JavaScript

Reading time9 min
Views51K

В этом туториале мы рассмотрим, как реализовать эффект drag & drop на ванильном JavaScript. Дословный перевод с английского — «потяни и брось» — отражает суть эффекта, это хорошо знакомое любому пользователю перетаскивание элементов интерфейса. Drag & drop может понадобиться при сортировке карточек в таск-трекере, переносе между списками или вообще при перетаскивании файлов в окно браузера.

Мы разберём drag & drop на примере сортировки. Для этого создадим интерактивный список задач.

Читать далее

aSocial — полностью распределенная социальная сеть

Reading time14 min
Views9.3K

В свете последних событий идея о распределенной социальной сети вновь зохватывает разум...

Читать дальше

Что послушать, когда пишешь код: бесплатные миксы, заглушка для второго монитора и эмбиент-плеер

Reading time3 min
Views18K

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

Читать далее

Бесплатный сервис хранения ссылок

Reading time8 min
Views13K

Знаю, что “хабра-народ” сейчас очень негодует, что стало очень мало технических статей, Хабр “не торт” и т.п. поэтому напишу сразу – это не техническая статья.

Цель статьи – поделиться удобным бесплатным сервисом хранения ссылок.

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

Читать далее

Рекомендательный движок за 2 строчки кода

Reading time5 min
Views5.3K

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

Алгоритм можно описать всего в одном предложении: берём историю продаж и обучаем на ней гугловый Word2Veс, фильтруем результат.

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

Читать далее

Математик-пенсионер, «хакнувший» лотерею

Reading time11 min
Views124K

Любитель головоломок


Джеральд Селби всегда любил загадки: там, где другие видели лишь шум, он стремился найти порядок и гармонию. Работая на фабрике Kellogg's по производству овсяных хлопьев, он занимался анализом материалов для увеличения срока годности продукции. Однажды, изучая хлопья других компаний, Джерри наткнулся на странную последовательность символов на обороте коробки General Mills. Вместо даты и фабрики-производителя там был отпечатан загадочный код. Джерри решил расшифровать его: взяв несколько коробок завтраков Kellogg's и General Mills, он начал сравнивать их влажность, сообразив, что хлопья с примерно одинаковой влажностью должны иметь близкие даты производства. Делая записи на бумаге, он выявил некоторые закономерности. Вскоре ему удалось расшифровать всё, что позволило определить место, дату и время изготовления. В более агрессивной сфере бизнеса «взлом» секретов конкурентов мог бы обернуться огромной выгодой, но не в производстве овсяных хлопьев, поэтому руководство восприняло его открытие без энтузиазма.
Читать дальше →

Android Bluetooth Low Energy (BLE) – готовим правильно, часть #4 (bonding)

Reading time9 min
Views11K

Содержание

Часть #1 (scanning)

Часть #2 (connecting/disconnecting)

Часть #3 (read/write)

Часть #4 (bonding), вы здесь

В предыдущей статье мы разобрались с операциями чтения/записи, включения/выключения нотификаций и организации очереди команд. В этой статье мы поговорим о сопряжении устройств (Прим. переводчика – далее я буду использовать термин «bonding»).

Читать далее

Сага о мобильном дизайне, часть 2

Reading time6 min
Views4.9K

С вами снова Максим Никитин, арт-директор ТехноФабрики с сагой о мобильном дизайне. Переходим ко второй части, где позанудствуем на тему удобстваа, внимания, опыта, привычек и прочих скучных вещей. 

UI/UX. При разработке любого мобильного дизайна все крутится вокруг этих четырех букв. Они настолько взаимосвязаны, что часто пишутся через слеш – UI/UX. Потому что не бывает одного без другого, как не бывает водки без похмелья.

Если по-простому, то UI (user interface) – это то, как оно выглядит, а UX (user experience) – это то, как оно работает. Если совсем точнее, то UX – это то, как пользователь работает с приложением, и куда он там норовит ткнуть пальцем. 

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

И здесь находится краеугольный камень разработки мобильного дизайна – надо чтобы не только красиво, но еще и удобно. Не только UI, но и UX. Потому что нарисовать можно все что угодно, хоть лицо Гитлера на весь экран, как в комиксе xkcd. Вопрос в том, сможет ли этим пользоваться кто-нибудь кроме девелопера и заказчика.

Читать далее

Всего лишь меняем модель эмулятора Android устройства

Reading time5 min
Views31K

Казалось бы, на первый взгляд весьма простая задача. Некоторые читатели могли еще в те бородатые времена лазить по всяким 4пда, рутить свой сенсорный самсунг, менять содержимое файла build.prop и показывать наивным ламерам свой iPhone 15+ Max Pro. Однако, как оказалось, и как оно часто бывает, не все так просто и здесь есть свои подводные камни. Статья призвана помочь простым работягам избежать все кочки да ямы на пути к своей цели!

Поменять модель эмулятора

Как самому разработать систему обнаружения компьютерных атак на основе машинного обучения

Reading time17 min
Views23K

На фото – Arthur Lee Samuel, пионер машинного обучения, демонстрирует возможности искусственного интеллекта и играет в шашки с собственной программой Checkers-Playing, одной из первых самообучающихся программ в мире. 1962 год.

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

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

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

Читать далее

Как написать «нанимающее» резюме для разработчика

Reading time9 min
Views15K

Привратники

Ваше резюме будут читать 3 типа людей:

HR или рекрутер

Первый человек, который видит ваше резюме, и скорее всего не технарь. У него есть только один вопрос:

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

Как он это определяет? Для этого ему надо понять, есть ли у этого кандидата нужные навыки. Но HR не является программистом, поэтому ваш разговор может закончиться так:

Простите, но вы нам не подходите. Нам нужен человек с опытом JavaScript, а я вижу что вы программировали только на Angular JS и jQuery.

Читать далее

Information

Rating
Does not participate
Location
Nordrhein-Westfalen, Германия
Registered
Activity