Как стать автором
Обновить
16
0
Aryeh Leonid R. @aryeh

SW Eng.

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

История миграции с GDrive на Я.Диск

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

Сервисами Google я очень активно пользуюсь уже лет 20.

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

Ни один из сервисов не вызвал полного удовлетворения. Такое впечатление, что делается все по принципу "хренак-хренак и в продакшен", UI/UX тестирование не проводится, сами своими сервисами не пользуются, на крики помощи бедолаг-пользователей плевать

Ну ладно, начинаем переезд

Начал я с покупки целого террабайта, поставил мобильное приложение под Android и включил синхронизацию фото (~200Gb) и стал ждать

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

Через три дня я открыл WEB версию на ПК и решил разложить по альбомам

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

В октябре 2022 у меня закончилась подписка на GOne, которую я не смог продлить, ввиду нахождения в РФ.

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

Чтобы не лишится гигабайтов данных решил мигрировать на православный Я.Диск

Читать далее
Всего голосов 59: ↑49 и ↓10+39
Комментарии74

Нет, Open Source не означает «бесплатная поддержка»

Время на прочтение6 мин
Количество просмотров29K
Год назад разработчик опенсорсной программы Raccoon APK Downloader заявил, что отныне приём баг-репортов — это часть платной поддержки. Идея обсуждается до сих пор и вызывает споры по понятным причинам. С одной стороны, это как-то контринтуитивно… С другой стороны, определённая логика тоже есть… В общем, судите сами, вот оригинальная заметка Патрика Альбрихта, её бурное обсуждение и пояснение позиции по итогам обсуждения.

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

Юзер:	Здравствуйте, хочу зарепортить баг в вашей программе.
Я:		Отлично! Для этого откройте тикет, пожалуйста.
Юзер:	Но тикеты вроде входят в платный пакет?
Я:		И?
Юзер:	Просто хочу сказать, что ваша программа сломана, чтобы вы могли починить её.
Я:		Да, с вашей стороны это запрос на поддержку. Пожалуйста, откройте тикет.
Юзер:	…бл%$#%$...
Читать дальше →
Всего голосов 191: ↑188 и ↓3+185
Комментарии74

ATSHA204A: маленький гигант большого крипто. Часть 1: ой, какой он у вас маленький

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


Рано или поздно, занимаясь DIY-разработкой, проектированием IoT устройств и тому подобным творчеством (или работой), вы приходите к необходимости защищать свои устройства и их коммуникации от взлома, кражи и подделки хранимых и передаваемых данных. Особенно это актуально в популярной области «интернета вещей», где вся система является распределённой и между её частями, хабами, датчиками и прочими элементами, происходит постоянный обмен информацией.

Первое, что приходит в голову — это реализация криптографической защиты программными средствами, например, защита передаваемых данных при помощи связки SHA-256/AES. Для большинства современных микроконтроллеров существуют соответствующие библиотеки, которые успешно работают даже на таких слабых MCU как ATmega328.

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

Что же делать?
Читать дальше →
Всего голосов 75: ↑70 и ↓5+65
Комментарии46

Кодирование и Шифрование

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

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

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

Читать далее
Всего голосов 12: ↑8 и ↓4+4
Комментарии3

Личный IM-мессенджер со сквозным шифрованием только для своих

Время на прочтение10 мин
Количество просмотров40K
В этой статье я рассказал, как сделать собственный безопасный мессенджер только для своей тусовки параноиков.

Сейчас есть много IM-мессенджеров с end-to-end шифрованием, но вариантов, которые можно быстро развернуть на своем сервере гораздо меньше.



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

Среди преимуществ этого подхода можно отметить:

  • Вы сами управляете своей информацией, в том числе ключами шифрования.
  • Вы не отдаете свою адресную книгу никому.
  • Нет необходимости использовать телефонный номер для регистрации.
  • Наличие клиентов под все популярные системы: Windows, Linux, Android, MacOS, iPhone.
  • Дополнительное шифрование STARTTLS/SSL при передаче сообщений, обеспечиваемое почтовым сервером.
  • Возможность настроить удаление старых сообщений с устройства (исчезающие сообщения).
  • Возможность настроить удаление сообщений с сервера, при получении.
  • Быстрая доставка, благодаря IMAP push.
  • Групповые защищенные чаты.
  • Поддержка передачи файлов, фото и видео.
  • Сервер и клиент относятся к открытому ПО и совершенно бесплатны.

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

Интересный факт: Роскомнадзор уже требовал от разработчиков Delta Chat предоставить доступ к пользовательским данным, ключам шифрования и зарегистрироваться в государственном реестре провайдеров, на что Delta Chat ответили отказом, т.к. не имеют собственных серверов и не имеют доступа к ключам шифрования.
Читать дальше →
Всего голосов 45: ↑45 и ↓0+45
Комментарии41

Кунг-фу стиля Linux: превращение веб-приложений в полноценные программы

Время на прочтение7 мин
Количество просмотров16K
Мне неприятно это признавать, но я, на самом деле, больше не работаю в Linux на настольном компьютере. С технической точки зрения я, всё же, пользуюсь Linux. Но 95% своих дел я делаю в Chrome. Среди обычных приложений, которые я ещё применяю, остались лишь инструменты разработки, командная оболочка, emacs и GIMP. А если бы мне было очень надо, то я, возможно, нашёл бы браузерную замену всем этим программам. Почтовый клиент? Gmail. Ведение блога? WordPress. Заметки? OneNote или Evernote. Хорошо бы запускать это всё в виде полноценных приложений, а не открывать во вкладках браузера. Сегодня я расскажу о том, как это сделать.


Читать дальше →
Всего голосов 55: ↑44 и ↓11+33
Комментарии17

3D Secure, или что скрывают механизмы безопасности онлайн-платежей

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


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


Один из протоколов, используемых для увеличения безопасности онлайн-платежей — 3D Secure. Это протокол, который был разработан на основе XML в качестве дополнительного уровня безопасности платежей, проводящихся без физического участия карты (card not present payment). VISA создала первую версию этого протокола, но вскоре его начали использовать и другие компании (Master Card, JCB International, AmEx, Мир), впоследствии объединившиеся с VISA в содружество EMV. EMV занимается поддержкой и развитием протокола 3DS.

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

Краткое руководство по Node.js для начинающих (SPA, PWA, mobile first)

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


Доброго времени суток, друзья!

Представляю вашему вниманию перевод Руководства по Node.js в формате одностраничного прогрессивного адаптированного приложения.

Данный формат означает следующее:

  • SPA — новые данные (разделы или главы руководства) загружаются без перезагрузки страницы — реализовано с помощью динамического импорта
  • PWA — приложение можно установить на мобильный телефон или компьютер; приложение работает даже при отсутствии подключения к сети — реализовано с помощью сервис-воркера и кэширования
  • mobile-first — приложение предназначено для использования, в первую очередь, на смартфонах, но хорошо выглядит и на широких экранах

Посмотреть и установить приложение можно ЗДЕСЬ.

Код проекта на GitHub
Читать дальше →
Всего голосов 9: ↑6 и ↓3+3
Комментарии5

Чек-лист разумной защиты своего ноутбука

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

Важный компонент защиты от несанкционированного доступа

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

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

Я постараюсь пройтись по основным угрозам и методам защиты. Например, люди часто забывают, что вводить пароль под камерой — плохая идея. Буду крайне признателен вашим дополнениям.
Читать дальше →
Всего голосов 66: ↑55 и ↓11+44
Комментарии130

Как ускорить игру «Жизнь» в сто раз

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

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

Мы также улучшим алгоритм на JavaScript, ускорив его в 10 раз по сравнению с неоптимизированной версией.

В конце статьи дана ссылка на код, а также на online-реализацию игры с оптимизированным алгоритмом на JavaScript, выполняющим до двухсот итераций в секунду на поле размера 1920x1080 (Full HD), где вы можете убить время поиграть в эту замечательную игру.
Читать дальше →
Всего голосов 83: ↑82 и ↓1+81
Комментарии124

Дешёвая и быстрая печать на чековом термопринтере

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

У нас, айтишников, часто возникает задача напечатать что-то простое и одноразовое – например, логин и пароль новому сотруднику, тикет для монтажника или что-то в этом роде. Тратить бумагу и картридж на подобное очень дорого. При этом есть принтеры с ультрадешёвой скоростной печатью, про которые редко кто вспоминает, хотя видим мы их все каждый день по много раз. Речь про чековые термопринтеры.



Всего голосов 96: ↑96 и ↓0+96
Комментарии98

Про установку и использование LineageOS 16, F-Droid

Время на прочтение127 мин
Количество просмотров311K
Предлагаю вашему вниманию инструкцию как оптимально (по моему мнению) перейти на свободное программное обеспечение при использовании смартфона на примере операционной системы LineageOS (далее сокращённо LOS) и приложений из F-Droid.

Я думаю, что это статья будет вам интересна, даже если вы не можете установить себе LOS, так как в данной статье также рассмотрены стандартные настройки Android, настройки и методика использования полезных приложений, магазин приложений F-Droid, разрешения Android, которые нельзя ограничить и другие, возможно полезные для вас нюансы.
Читать дальше →
Всего голосов 74: ↑72 и ↓2+70
Комментарии192

Приглашая опытного разработчика, вы не покупаете, а продаёте

Время на прочтение7 мин
Количество просмотров57K
Несомненно, нанять опытного программиста сложно. Но я не верю, что рынок полностью иссяк. На протяжении карьеры я работал со многими командами, которые делятся на две категории: те, которые никак не могут нанять опытных разработчиков, и те, которые привлекают их с лёгкостью. На самом деле у второй категории вообще не было проблем с наймом.

Есть много причин, почему некоторым не удаётся привлечь талантов. Однако все команды, которые делали это с лёгкостью, поняли один простой факт о текущей ситуации на рынке:

При найме сеньоров не компания выбирает кандидата, а кандидат выбирает компанию.

Проще говоря:

Приглашая опытного разработчика, вы не покупаете, а продаёте.
Читать дальше →
Всего голосов 146: ↑144 и ↓2+142
Комментарии186

Мне 57, и я scrum-мастер

Время на прочтение7 мин
Количество просмотров26K
Этим постом мы отвечаем на вопрос, есть ли для программиста карьера (и вообще работа) после 50-ти. Свою историю рассказывает Татьяна Митина, руководитель отдела программирования в центре разработки C3D Labs в Нижнем Новгороде. Она 16 лет проработала в Intel, а сейчас занимается разработкой геометрического 3D-ядра.

image
Читать дальше →
Всего голосов 81: ↑77 и ↓4+73
Комментарии83

Переезд хуже пожара: как перевезти 3Тб данных с Dropbox на Google Drive и выжить

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

Поэтому ещё 5 лет назад, основав «Банду умников» и делая тестовый тираж, мы уже хранили все данные в Dropbox — благо они тогда умещались в бесплатные лимиты. За это время команда выросла с 2 до 35 человек, и в этом году мы поняли, что пора прощаться с Dropbox и переезжать на Google Drive. Это решение вызвало череду приключений, которые мы совсем не планировали.

Для переезда с одного облачного сервиса на другой может быть куча разных причин: от риска блокировок (привет, Роскомнадзор) до потребности в каком-то принципиально новом функционале. В нашем случае причина была простой: мы сели, посчитали и поняли, что вместо 12 аккаунтов с безлимитным хранилищем у нас может быть 35 аккаунтов (то есть вся команда) — и всё это ровно за те же деньги.

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

Вот 6 важных моментов, которые мы открыли для себя в процессе смены облачного провайдера.
Читать дальше →
Всего голосов 37: ↑36 и ↓1+35
Комментарии85

Ручной шифр LS47

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

Данный шифр является небольшим усовершенствованием шифра ElsieFour, который разработал Алан Камински (Alan Kaminsky) [1]. В этом варианте используются 7x7 символов вместо оригинальных 6x6, которых едва-едва хватает даже на латинский алфавит. Дополнительно описан простой алгоритм получения ключа по паролю, как более привычный вариант. Стойкость и безопасность такие же как у ElsieFour.

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

Освещение растений белыми светодиодами

Время на прочтение13 мин
Количество просмотров265K
Интенсивность фотосинтеза под красным светом максимальна, но под одним только красным растения гибнут либо их развитие нарушается. Например, корейские исследователи [1] показали, что при освещении чистым красным масса выращенного салата больше, чем при освещении сочетанием красного и синего, но в листьях значимо меньше хлорофилла, полифенолов и антиоксидантов. А биофак МГУ [2] установил, что в листьях китайской капусты под узкополосным красным и синим светом (по сравнению с освещением натриевой лампой) снижается синтез сахаров, угнетается рост и не происходит цветения.


Рис. 1 Леанна Гарфилд, Tech Insider — Aerofarms

Какое нужно освещение, чтобы при умеренном энергопотреблении получить полноценно развитое, большое, ароматное и вкусное растение?
Читать дальше →
Всего голосов 54: ↑52 и ↓2+50
Комментарии287

Спросите Итана №112: стоит ли бояться конца Вселенной

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

Что останется, когда всё исчезнет?


Конец? Нет, путешествие не заканчивается здесь. Смерть – всего лишь очередной путь, который мы все должны пройти. Серая дождевая завеса этого мира подымается, всё превращается в серебристое зеркало, а затем ты видишь это…
— Дж. Р. Р. Толкин

[цитата не из книг Толкина, а из фильма «Властелин колец» – прим. перев.]

Всё, что мы видим, знаем и испытываем во Вселенной, когда-нибудь закончится. Не только всем нам предстоит однажды столкнуться с нашей кончиной, но и сами звёзды сгорят, галактики умрут, и даже материя может когда-нибудь перестать существовать. Больше других присланных мне вопросов я был тронут вопросом от Гэри Томаса, который не может спать по ночам, думая об этом:
Я наткнулся на ваш блог, будучи в поисках ответа и удовлетворения. Мне 47 лет и не так давно у меня появился страх конца света, а затем конца Вселенной. Я понимаю, что это не повлияет на меня или на кого бы то ни было в ближайшие миллионы лет, но меня пугает, что всё, что мы сделали и вся красота мира однажды исчезнет.

И это та правда о Вселенной, с которой нам придётся столкнуться.

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

Фотостудия для съёмок пластилиновой игры

Время на прочтение3 мин
Количество просмотров32K
Привет! В жизни почти каждого разработчика игр наступает момент, когда он отбивается от стаи, выкапывает себе нору и начинает в одиночку делать «лучшую в мире игру, не то что эти всякие». 2 года назад это случилось и со мной. Не обладая навыками художника, я решил замахнуться на stop-motion анимацию и делать всю графику из пластилина.

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

Шишки и грабли Android-разработчика за 2 года

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

Я ясно помню тот день в далеком 2014 году, когда я решил заняться программирование под Android. Это оказалось лучшим решением, которое я принял в моей жизни. Уже прошло почти два с половиной года, и за это время у меня возможность кое-чему научиться.

Когда я только начал, я не знал никого, кто мог бы научить меня, показать, как правильно нужно делать. И я совершил МНОЖЕСТВО ошибок, в так же потратил кучу времени на то, чтобы потом их исправить.

Полтора года спустя, мне выпал шанс поработать с очень талантливыми и опытными Android-разработчиками, которые направляли меня и помогли мне привести все в порядок. Эти две составляющие научили меня многому. Я понял, что надо ДЕЛАТЬ, а самое главное, что НЕ НАДО.

И уже какое-то время я, как могу, стараюсь помогать другим разработчикам — прямо или косвенно. Вот мои профили: StackOverflow и Github.

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

Предупреждение: в этой статье я затрону Android, а также идеи и результаты программирования, так что если вы не знакомы с одним из этих пунктов, то вам может быть неинтересно дочитывать статью до конца. Остальные, просто читайте.
Читать дальше →
Всего голосов 34: ↑25 и ↓9+16
Комментарии17
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Иерусалим, Иерусалим, Израиль
Дата рождения
Зарегистрирован
Активность

Специализация

Backend Developer, Embedded Software Engineer
Senior
JavaScript
Node.js
Express