Как стать автором
Обновить
0
0
Алексей @b1nary

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

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

Знакомьтесь, pass

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


Я много лет искал подходящую мне хранилку паролей и недавно наткнулся на Pass на HackerNews. Идея хранить пароли в git-репозитории может выглядеть странно, но в целом это неплохая идея, потому что:

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

Я использую -c чтобы копировать/вставлять пароли. Есть расширение для браузера, но копипейст лично мне удобнее. Проблемы синхронизации с телефоном и всеми linux-дейвайсами тоже не стоит (потому что это всего лишь git).

Делюсь с вами переводом приветственной странички Pass.



Управление паролями должно быть простым и следовать философии Unix. Используя pass, каждый Ваш пароль находится внутри зашифрованного файла gpg, имя которого совпадает с именем ресурса или веб сайта к которому данный пароль привязан. Эти зашифрованные файлы могут быть организованы в удобные иерархии папок, скопированы с носителя на носитель и, в общем, обработаны с помощью любых утилит управления файлами командной строки.

С pass управлять отдельными файлами паролей становится крайне просто. Все пароли хранятся в ~ / .password-store, а pass предоставляет несколько удобных команд для добавления, редактирования, генерации и получения паролей. Это очень короткий и простой Shell скрипт. Он способен временно помещать пароли в буфер обмена и отслеживать изменения паролей с помощью git.
Читать дальше →
Всего голосов 30: ↑29 и ↓1+40
Комментарии54

Да, синдром самозванца на самом деле полезен для разработчиков

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


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

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

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

На каком-то уровне я ощущал, что мне здесь не место и что я самозванец.
Читать дальше →
Всего голосов 30: ↑24 и ↓6+27
Комментарии16

Пробуем preload (PHP 7.4) и RoadRunner

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


Привет, Хабр! 

Мы часто пишем и говорим о производительности PHP: как мы ей занимаемся в целом, как мы сэкономили 1 млн долларов при переходе на PHP 7.0, а также переводим разные материалы на эту тему. Это вызвано тем, что аудитория наших продуктов растёт, а масштабирование PHP-бэкенда при помощи железа сопряжено со значительными затратами — у нас 600 серверов с PHP-FPM. Поэтому инвестирование времени в оптимизацию для нас выгодно.

Прежде мы говорили в основном об обычных и уже устоявшихся способах работы с производительностью. Но сообщество PHP не дремлет! В PHP 8 появится JIT, в PHP 7.4 — preload, а за пределами core-разработки PHP развиваются фреймворки, подразумевающие работу PHP как демона. Пора поэкспериментировать с чем-то новым и посмотреть, что это может нам дать.

Так как до релиза PHP 8 ещё далеко, а асинхронные фреймворки плохо подходят для наших задач (почему — расскажу ниже), сегодня остановимся на preload, который появится в PHP 7.4, и фреймворке для демонизации PHP — RoadRunner.

Это текстовая версия моего доклада с Badoo PHP Meetup #3. Видео всех выступлений мы собрали в этом посте.
Читать дальше →
Всего голосов 114: ↑111 и ↓3+108
Комментарии52

Почему мы пишем бизнес-логику на Lua

Время на прочтение7 мин
Количество просмотров14K
Привет, Хабр. В этом посте мы хотим рассказать о том, как и почему мы в IPONWEB используем язык программирования с красивым названием Lua.

Lua — скриптовый встраиваемый язык программирования со свободно распространяемым интерпретатором и открытыми исходными текстами на C. Он был разработан в 1993 году в Бразилии, в подразделении Tecgraf Католического университета Рио-де-Жанейро, а его прародителями были DEL (Data-Entry Language) и SOL (Simple Object Language), разработанные там же ранее. Один из прародителей, язык SOL, косвенно поучаствовал и в «крещении» новорожденного — «Sol» переводится с португальского как «солнце», а новый язык получил имя «Lua», «луна».

Легкость встраивания Lua в написанные на “системных” языках движки сделала его популярным скриптовым языком видеоигр. На Lua написаны, к примеру, скрипты в Grim Fandango и Baldur's Gate. Те, кто играет в World of Warcraft, тоже наверняка слышали о Lua не раз и не два — именно на нем пишут аддоны к игре, облегчающие жизнь хардкорщикам, казуалам, любителям помериться эффективностью и прочим обитателям игрового мира. Вне геймдева Lua используется как скриптовый язык встроенных систем (телевизоров, принтеров, автомобильных панелей), а также приложений, например, медиаплеера VLC Media Player. Lua используют в качестве встроенного языка такие инструменты, как Tarantool, Redis и OpenResty. А еще Lua был использован как язык расширения для расчетных кодов на языке Фортран, моделирующих термомеханическое поведение ядерного топлива.

Почему Lua?


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

Производительность PHP-бэкенда. Видео с Badoo PHP Meetup #3

Время на прочтение2 мин
Количество просмотров9K
Привет! Готовы материалы с Badoo PHP Meetup #3, традиционной неформальной встречи сообщества. Напомню, в этот раз мы обсуждали проблемы производительности бэкенда на PHP и их решение в разных компаниях.  



Тема нашла моментальный отклик среди почти 200 гостей — на каждом перерыве спикеров окружала толпа с вопросами. Опытом делились Александр Малащицкий из Superjob, Павел Мурзаков pmurzakov из Badoo и Антон Шабовта zloyusr из Onliner, а к панельной дискуссии также присоединились Семён Катаев из Avito и Михаил Буйлов из Mamba.

Все материалы — под катом, полезного просмотра!
Всего голосов 33: ↑33 и ↓0+33
Комментарии6

Как найти работу с релокацией в Европу: практический гайд для IT-специалистов

Время на прочтение7 мин
Количество просмотров93K
Сам по себе поиск работы в сфере IT достаточно прост. Что же касается поиска вакансий с возможность релокации, здесь уже сложнее. Несмотря на то, что технологические компании по всему миру сейчас активно нанимают разработчиков и других IT-специалистов из-за рубежа, поиск таких вакансий забирает достаточно много сил и времени.

В этой статье я решил собрать наиболее популярные сайты/ресурсы, на которых реально найти вакансии с переездом в страны Европы.

Telegram-каналы



Джоб-борды для IT-специалистов и нишевые сайты


AngelList


На сегодняшний день AngelList является одним из наиболее популярных сайтов по поиску работы в стартапах по всему миру. Процесс поиска вакансий с релокацией на этом сайте очень прост – во вкладке «Compensation» выбираем опцию «Company Will Sponsor Visa». Чтобы сузить полученный список вакансий до максимально релевантных, можно использовать фильтры «Role» и «Location».

image

Glassdoor


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

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

image

Поскольку на сайте Glassdoor нет специального фильтра для поиска работы с переездом, при поиске вакансий описанным выше методом могут попадаться нерелевантные. В целом же, ключевое слово relocation в поисковой строке делает свое дело.
Читать дальше →
Всего голосов 36: ↑31 и ↓5+26
Комментарии23

Имплантация при полном отсутствии зубов, как следствие несвоевременного обращения к стоматологу

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

Дорогие друзья, рад снова приветствовать вас! Мы уже многое обсудили на тему зубов мудрости, какие бывают, как удаляются, не болит не значит, что все в порядке, нечего делать в ЧЛХ и уж тем более «их вытягивать». Мне очень приятно, что многим из вас статьи понравились, но сегодня — я все же продолжу тему имплантации.

Все мы знаем, что наш народ ходит по врачам в исключительных случаях. Тогда, когда уже поздно. Поход к стоматологу, не является исключением. Конечно, это мало относится к пользователям Хабра, но мне бы хотелось рассказать, а главное показать вам, чем это может закончиться.
Читать дальше →
Всего голосов 40: ↑36 и ↓4+32
Комментарии93

Немного криптографии: загадочная и легендарная Enigma

Время на прочтение12 мин
Количество просмотров26K
Тайно проникнуть в намерения и замыслы противника, выявить его сильные и слабые стороны, предугадать, а часом и предотвратить планы — вот что представляет собою феномен разведки. Начало прошлого столетия по праву заслуживает звания века расцвета искусства разведки и контрразведки. Это статья не воспевание гимна Германии времен Второй Мировой, а еще одно напоминание о том, насколько много усилий было приложено для победы в далеких 40-х годах прошлого столетия. Ведь уже к началу Второй Мировой Германия стала мировым лидером по производству специальной техники в данной области. Разнообразные магнитофоны, в том числе и малогабаритные, миниатюрные микрофоны, системы подслушивания считались лучшими в мире, ведь они были разработаны в соответствии в последними достижениями немецкой науки в области радиотехники и химии.



Всего несколько экземпляров Энигмы, самой сложной шифровальной машины гитлеровского рейха, смогли пережить войну: преданные солдаты фашистской армии, сдаваясь, уничтожали ее тысячами. Сегодня о технике шифрования, применяемой в легендарной «Загадке» мало кто может рассказать.
Читать дальше →
Всего голосов 27: ↑27 и ↓0+27
Комментарии2

Асинхронный PHP и история одного велосипеда

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

После выхода PHP7 появилась возможность сравнительно небольшой ценой писать долгоживущие приложения. Для программистов стали доступны такие проекты, как prooph, broadway, tactician, messenger, авторы которых берут на себя решение наиболее частых проблем. Но что если сделать небольшой шаг вперёд, углубившись в вопрос?


Попробуем разобрать судьбу ещё одного велосипеда, который позволяет реализовать Publish/Subscribe приложение.

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

Delta Chat — децентрализованный мессенджер поверх электронной почты

Время на прочтение4 мин
Количество просмотров42K
Изжила ли себя электронная почта? Каким мессенджером стоит пользоваться, чтобы не попасть в затруднительную ситуацию и не потерять связь с друзьями? Можно ли использовать старые технологии на новый лад?

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

Представляю вашему вниманию проект DeltaChat




Delta Chat — свободный децентрализованный мессенджер для Android, iOS, Linux, Mac, функционирующий поверх древнейшего стека протоколов E-mail. Версия для Windows находится в разработке.
Читать дальше →
Всего голосов 69: ↑65 и ↓4+61
Комментарии65

Как стать Java разработчиком за 1,5 года

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

Меня зовут Сергей, мне 40 лет и сейчас я работаю Java разработчиком в немецкой компании. Мы занимаемся разработкой программного обеспечения для пивоварен оценки финансовых и кредитных рисков. Это моя первая работа в качестве разработчика. До этого я работал в сфере IT-поддержки и системной интеграции. Первого февраля 2019 г. закончился мой шестимесячный испытательный срок, и у меня на руках бессрочный контракт. Я хочу поделиться своим опытом, как можно самостоятельно выучить Java так, чтобы получить работу.



Это мой рабочий стол. Пить пиво в рабочее время у нас разрешено, мы же в Германии.


Моя первая статья: «IT-эмиграция с семьей. И особенности поиска работы в маленьком городе Германии, когда ты уже там»

Читать дальше →
Всего голосов 129: ↑122 и ↓7+115
Комментарии212

Научные способы улучшить внимание: ноотропы, нейроинтерфейсы и электростимуляция

Время на прочтение28 мин
Количество просмотров102K
Как усилить концентрацию внимания? Для этого существует много бытовых советов, например, использовать наушники с шумоподавлением, выработать привычку работать под музыку одного стиля, блокировать сайты, на которые чаще всего отвлекаешься, ложиться по будильнику, заниматься спортом и класть все важные вещи в нужные места.

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

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


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

Telegram боты. Загружаем файлы больше 50мб

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

Telegram боты позволяют автоматизировать многие процессы. Их использование не ограничивается одним чатом, по сути — бот это всего лишь интерфейс ввода-вывода, который помимо текста также может принимать и передавать файлы: изображения, видео, аудио, документы…

  • Для пользователей максимальный размер файла — 1.5Гб
  • Боты ограничены размером всего лишь в 50мб

Как обойти данное ограничение — под катом.
Читать дальше →
Всего голосов 27: ↑21 и ↓6+15
Комментарии7

Асинхронный Python: различные формы конкурентности

Время на прочтение8 мин
Количество просмотров131K
С появлением Python 3 довольно много шума об “асинхронности” и “параллелизме”, можно полагать, что Python недавно представил эти возможности/концепции. Но это не так. Мы много раз использовали эти операции. Кроме того, новички могут подумать, что asyncio является единственным или лучшим способом воссоздать и использовать асинхронные/параллельные операции. В этой статье мы рассмотрим различные способы достижения параллелизма, их преимущества и недостатки.
Читать дальше →
Всего голосов 23: ↑21 и ↓2+19
Комментарии36

PHP, YII2 и формирование больших excel-файлов

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

Начало


Одна поддерживаемая нашей компанией учетно-отчетная система начала очень быстро разрастаться в количестве хранимых данных. Система написана на PHP с использованием фреймворка Yii2. Изначально отчеты строились через библиотеку PhpSpreadsheet, которая пришла на смену, уже давно ставшему deprecated, PhpExcel.

Среди разного вида отчетности был один очень крупный – фактически полный набор всех хранящихся в БД данных должен выгружаться в одну excel-таблицу. На начальном этапе проблем не возникало, но когда объем стал превышать многие сотни тысяч записей, то скрипт формирования выгрузки стал отваливаться в timeout limit.
Читать дальше →
Всего голосов 30: ↑27 и ↓3+24
Комментарии37

ElasticSearch — mapping и поиск без сюрпризов

Время на прочтение5 мин
Количество просмотров41K
В статье рассмотрим, как и зачем применять mapping. Нужен ли он вообще и в каких случаях. Я приведу примеры его установки, а так же постараюсь поделиться некоторыми полезными хитростями, которые могут помочь вам в усовершенствование поиска на вашем сайте.

Всем, кому интересен современный поисковый движок ElasticSearch, прошу под кат.
Читать дальше →
Всего голосов 3: ↑2 и ↓1+1
Комментарии6

Быстрый полнотекстовый поиск ElasticSearch

Время на прочтение6 мин
Количество просмотров219K
image
При разработке высоконагруженных сайтов или корпоративных систем частенько возникает проблема с разработкой быстрого и удобного поискового движка. Ниже перечислены наиболее важные, на мой взгляд, требования к такому движку:

  • Скорость
  • Простота установки и настройки
  • Цена (желательно бесплатно и с открытым кодом)
  • Обмен информацией в формате JSON (по HTTP)
  • Масштабируемость (возможность распределения на несколько серверов)
  • Индексация в режиме реального времени
  • Multi-tenancy (гибкость в настройках под индивидуального пользователя)
  • Возможность переноса системы в облако

Хочу рассказать вам о новом поисковом движке Elasticsearch, который полностью удовлетворяет всем этим требованиям. В статье будет краткое описание, ссылка на авторитетную презентацию, а также описание установки и работы с ним.
Читать дальше →
Всего голосов 69: ↑63 и ↓6+57
Комментарии61

Каково оно учить JavaScript в 2016

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


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

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

— Круто. Мне нужно создать страницу, которая отображает последние действия со стороны пользователей, так что мне просто нужно получить данные от REST и отобразить их в какой-то фильтруемой таблице, ну и обновлять её, если что-то изменится на сервере. Я думал, может быть, использовать JQuery для извлечения и отображения данных?

— О, Мой Бог! Нет! Никто больше не использует JQuery. Ты должен попробовать React: это — 2016!
Читать дальше →
Всего голосов 260: ↑238 и ↓22+216
Комментарии298

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

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

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


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

JavaScript: 12 вопросов и ответов

Время на прочтение16 мин
Количество просмотров84K
JavaScript — это потрясающий инструмент, который можно найти буквально в каждом углу современного интернета. Но даже несмотря на его невероятную распространённость, и профессионалам в области JS всегда будет чему поучиться. Всегда найдётся что-то такое, чего они не знают.

image

В этом материале вы найдёте разбор двенадцати вопросов о JavaScript, на которые нередко не могут ответить даже опытные разработчики. Сначала мы рассмотрим десять типичных вопросов, включая такие, которые часто всплывают на собеседованиях. Оставшиеся два вопроса посвящены более сложным и неоднозначным вещам, в частности, использованию JS для улучшения производительности веб-страниц и разработке приложений, которые не теряют актуальности с течением времени.
Читать дальше →
Всего голосов 52: ↑35 и ↓17+18
Комментарии26

Информация

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