Pull to refresh
31
0
Maxim W @maximw

backend developer

Send message

Девять граблей Elasticsearch, на которые я наступил

Reading time7 min
Views73K
Автор иллюстрации — Anton Gudim


«Подготовленный человек тоже наступает на грабли.
Но с другой стороны — там, где ручка.»


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

Как следует писать комментарии к коммитам

Reading time11 min
Views144K


Предисловие от переводчика


На протяжении многих лет разработки ПО, будучи участником многих команд, работая с разными хорошими и опытными людьми, я часто наблюдал (да и чего греха таить, до определенного момента — создавал) одну и ту же проблему — тотальный бардак в репозитории. Каждый писал комментарии к коммитам в своем стиле (и хорошо, если постоянно в одном); половина комментариев была бесполезна (из разряда "это мост"), половина оставшейся половины — едва понятна.

И вот в один прекрасный момент я увидел данную статью, до перевода которой у меня наконец дошли руки. Всего 7 простых и коротких правил, и — о чудо — смотреть на историю коммитов стало не только полезно, но и приятно. Ничего революционного, все довольно очевидно, но сформулировано и резюмировано просто отлично.
Читать дальше →

Поиск уязвимостей в смарт-контрактах: обзор конкурса EtherHack на Positive Hack Days 8

Reading time10 min
Views4.1K
image

В этом году на PHDays впервые проходил конкурс под названием EtherHack. Участники искали уязвимости в смарт-контрактах на скорость. В этой статье мы расскажем вам о заданиях конкурса и возможных способах их решения.
Читать дальше →

Обзор мобильных приложений для персонального финансового учета

Reading time5 min
Views103K
Около десяти лет я пользовался одним и тем же мобильным приложением для персонального финансового учета (cash organizer), сначала на windows mobile, потом на android. Некоторое время назад у меня накопилось достаточное количество претензий к нему, чтобы я решил изучить альтернативы. Результаты решил оформить в виде статьи, надеюсь, что это окажется полезно кому-либо еще.
Читать дальше →

Руководство по написанию защищённых PHP-приложений в 2018-м

Reading time18 min
Views59K

Приближается 2018 год, и технари — в частности веб-разработчики — должны отбросить многие старые методики и верования в сфере разработки защищённых PHP-приложений. Особенно это относится ко всем, кто не верит, что такие приложения вообще возможны.


Это руководство — дополнение к электронной книге PHP: The Right Way с сильным уклоном в безопасность, а не общие вопросы программирования на PHP (вроде стиля кода).

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

Пара способов отправить уведомления на смартфон со своего сервера

Reading time9 min
Views95K
В этом туториале я рассмотрю пошагово, как отправлять со своего сервера уведомления на свой (или не свой) смартфон, какие средства для этого понадобятся. Эти способы универсальны и подойдут для любого языка программирования, т.к. напрямую используют API гугла, без использования библиотек. Отправить можно на смартфоны с Android, iOS и в браузеры с поддержкой Push API (на сегодня это Chrome, Firefox и их производные).

В общем всем тем, кто давно хотел отправлять уведомления со своего домашнего сервера на свой смартфон, но не знал с чего начать, посвящается.
Хочу отправлять свои уведомления!

[Видео] Орки тут: парадигмы систем оркестрации, Docker, Mesos

Reading time1 min
Views9.4K


Если вы пропустили слет DevOps-инженеров «Орки тут» в Яндекс.Деньгах, но интересуетесь вопросами контейнеризации и оркестрации – мы сделали записи всех четырех докладов.


Специалисты из Яндекса, Альфа-Лаборатории, компаний Zvooq и Badoo рассказывают про опыт работы с системами оркестрации и сложные моменты.

Погружение в разработку на Ethereum. Часть 1

Reading time11 min
Views98K
Технология блокчейна завладела умами. Покупаются фермы, ICO собирают миллионы долларов. Наша компания тоже захотела приобщиться. Решили начать с малого. В серии статей будет описан наш путь от новичков в сфере блокчейна до общепризнанных гуру. На момент написания этих слов мы все еще на этапе новичков, предлагаем следить за нашим развитием и развиваться с нами.

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

Доступно о криптографии на эллиптических кривых

Reading time37 min
Views279K
image


Тем, кто знаком с криптографией с открытым ключом, наверно известны аббревиатуры ECC, ECDH и ECDSA. Первая — это сокращение от Elliptic Curve Cryptography (криптография на эллиптических кривых), остальные — это названия основанных на ней алгоритмов.

Сегодня криптосистемы на эллиптических кривых используются в TLS, PGP и SSH, важнейших технологиях, на которых базируются современный веб и мир ИТ. Я уже не говорю о Bitcoin и других криптовалютах.

До того, как ECC стала популярной, почти все алгоритмы с открытым ключом основывались на RSA, DSA и DH, альтернативных криптосистемах на основе модулярной арифметики. RSA и компания по-прежнему популярны, и часто используются вместе с ECC. Однако несмотря на то, что магия, лежащая в фундаменте RSA и подобных ей алгоритмов легко объяснима и понятна многим, а грубые реализации пишутся довольно просто, основы ECC всё ещё являются для большинства людей загадкой.

В этой серии статей я познакомлю вас с основами мира криптографии на эллиптических кривых. Моя цель — не создание полного и подробного руководства по ECC (в Интернете полно информации по этой теме), а простой обзор ECC и объяснение того, почему её считают безопасной. Я не буду тратить время на долгие математические доказательства или скучные подробности реализации. Также я представлю полезные примеры с визуальными интерактивными инструментами и скриптами.
Читать дальше →

Интернет в поездках. Анализ зарубежных SIM-карт

Reading time7 min
Views67K
imageРаньше в путешествиях я просто покупал локальную sim-карту и в конце поездки выбрасывал. Но потом путешествия становились сложнее, появились пересадки и несколько стран за один трип – и каждый раз покупать симки не хватило бы ни времени, ни денег. И тут я начал искать ту идеальную sim-карту, которая работает worldwide и за копейки). Естественно, что такой карты не бывает, но нашел несколько продуктов, которые отлично друг друга дополняют. Тема актуальна не только потому что лето. Недавно отменили роуминг в EU, причем северные страны получили особые права брать roaming fee, а южные поменяли тарифы. Инфу актуализировал для себя, но пригодится каждому путешествующему зарубеж.

Основных универсальных продуктов на рынке три: MTX Connect, DrimSim, AirBalticCard Card. Еще достойны внимания четыре prepaid-тарифа от зарубежных операторов, которые можно купить самостоятельно в ближайшей поездке, либо через посредников в России: Saunalahti от Elisa FI (Финляндия), Internetikaart от Elisa EE (Эстония), Mundo от Orange ES (Испания), Vodafone 25 от Vodafone IT (Италия).

Разброс цен приличный. Ниже Вы найдете большую сравнительную таблицу со странами и ценами, а также краткое резюме по каждому продукту.
Читать дальше →

Подробный гайд по выбору ноутбучной оперативки

Reading time6 min
Views178K
Привет, GT! Пагубная тенденция делать ноутбуки всё тоньше и тоньше уже лишила нас апгрейдов и россыпи портов. В лучшем случае производитель даёт заменить накопитель, в худшем — предлагает докупить уродливую и неприлично дорогую док-станцию с дополнительными разъёмами.



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

Это вопрос должен решать архитектор. Или нет?

Reading time15 min
Views26K
У меня есть некоторый опыт в реализации систем на базе микросервисной архитектуры и я хотел бы поделится вопросами (и ответами), которые возникают при реализации подобных проектов. К сожалению, я не имею права распространяться о проектах в которых я участвовал, поэтому я выдумал собственный сферический проект в вакууме. В этом проекте нам встретится множество стандартных проблем.

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

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

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

ТОП 100 англоязычных сайтов об IT

Reading time8 min
Views100K


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

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

Чтобы создать ТОП полезных англоязычных IT-ресурсов, мы решили воспользоваться статистикой Хабрахабра. Наряду с авторскими публикациями, здесь публикуются и переводы интересных материалов. Такие посты отмечены тегом «Перевод» и содержат ссылку на оригинал.

Всего за последние полгода на Хабре было около 1000 переводных статей. Мы посчитали для каждого источника переводов средний рейтинг публикации, среднее число просмотров и количество добавлений в Избранное. Затем были удалены сайты со средним рейтингом публикаций менее 16 и числом просмотров менее 4000. Полученные сайты мы отсортировали по числу переводов на Хабре из этого источника, так как, возможно, это характеризует ресурс как часто обновляемый и «объёмный».

Собрав и проанализировав таким образом данные о публикациях, мы получили наш ТОП100 компьютерных сайтов на английском, который мы надеемся будет полезен и вам.
Читать дальше →

Решение проблем организации бизнес-логики в PHP или как пойти своим путем

Reading time12 min
Views17K
image Привет, Хабр! Не первый раз я пытаюсь написать эту статью, но давно уже есть желание поделиться опытом и люди просят.

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

Статья будет о том как мы организовали работу с бизнес логикой в PHP, совмещающую разные подходы.

Тут будет изложено как уйти от проблем PHP фреймворков, связанных с размазыванием предметной логики по слою контроллеров.

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

Руководство по безопасности MongoDB

Reading time12 min
Views17K
Нравится нам это или нет, но нереляционные базы данных с открытым исходным кодом составляют значительную часть сложившейся экосистемы инструментов для хранения данных, повсеместно применяются как в небольших, так и крупных Web-проектах. Вполне вероятно, что кому-то из вас пришлось столкнуться с MongoDB в «продакшене». Умение обезопасить БД от внешних посягательств является необходимым для успешной экплуатации навыком. Об этом и многих других вопросах мы поговорим на PG Day'17 в секции открытых баз данных. Тем временем, мы рады представить вам перевод интересной обзорной публикации, посвященной безопасности MongoDB.



У MongoDB есть всё необходимое для сохранения ваших данных в целости. Мы расскажем о том, что именно может вам понадобиться и как это настраивать.

Безопасность MongoDB снова в новостях. Совсем недавно СМИ наводнили истории, рассказывающие о том, как хакеры захватывали базы данных MongoDB и требовали выкуп в биткойнах. Десятки тысяч инсталляций MongoDB были скомпрометированы, согласно Rapid7.
Читать дальше →

Что намазать на зубы, чтобы они не выпали

Reading time8 min
Views194K


Хорошо зафиксированный пациент в анестезии не нуждается

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


  • Как правильно мазать зубы пальцем?
  • Хорошо ли растворяются пломбы в кислоте?
  • Почему больно, когда сверлят зубы дрелью без анестезии?
  • Зачем мазать зубы зеленкой?
  • Лечение кариеса на дому
  • Глубокое микрофторирование эмали

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

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

Корректирующие коды «на пальцах»

Reading time11 min
Views78K

Корректирующие (или помехоустойчивые) коды — это коды, которые могут обнаружить и, если повезёт, исправить ошибки, возникшие при передаче данных. Даже если вы ничего не слышали о них, то наверняка встречали аббревиатуру CRC в списке файлов в ZIP-архиве или даже надпись ECC на планке памяти. А кто-то, может быть, задумывался, как так получается, что если поцарапать DVD-диск, то данные всё равно считываются без ошибок. Конечно, если царапина не в сантиметр толщиной и не разрезала диск пополам.


Как нетрудно догадаться, ко всему этому причастны корректирующие коды. Собственно, ECC так и расшифровывается — «error-correcting code», то есть «код, исправляющий ошибки». А CRC — это один из алгоритмов, обнаруживающих ошибки в данных. Исправить он их не может, но часто это и не требуется.


Давайте же разберёмся, что это такое.


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


Внимание! Много текста и мало картинок. Я постарался всё объяснить, но без карандаша и бумаги текст может показаться немного запутанным.

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

Английский для собеседований в IT-компании: что нужно для старта карьеры?

Reading time6 min
Views160K

Собеседование на английском — дело непростое. Но хорошее планирование и подготовка ключевых моментов сделают этот процесс более приятным и безобидным.


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

14 полезных сервисов и приложений для изучения английского

Reading time4 min
Views89K

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


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

Information

Rating
Does not participate
Location
Россия
Registered
Activity

Specialization

Specialist
Lead