Pull to refresh
7
0.1
Евгений Трофимов @VSOP_juDGe

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

Send message

Сайт сына маминой подруги

Reading time4 min
Views101K

Бывает, когда меня нанимают починить или взять на поддержку сайт, то я открываю его исходники и хочу воскликнуть: "А у кого вы его украли?" Потому что качество исполнения и сложность технологий значительно превосходят обыденные для такого класса сайтов. После того как я озвучиваю цену за поддержку подобного сайта и получаю в ответ недоумение, мне хочется уже кричать: "Что происходит?!"

Читать далее
Total votes 283: ↑269 and ↓14+255
Comments366

Логирование в телеграм, или история о том, как я сделал питон библиотеку

Reading time3 min
Views29K

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

Читать далее
Total votes 10: ↑8 and ↓2+6
Comments3

Практическое руководство по разработке бэкенд-сервиса на Python

Reading time57 min
Views173K
Привет, меня зовут Александр Васин, я бэкенд-разработчик в Едадиле. Идея этого материала началась с того, что я хотел разобрать вступительное задание (Я.Диск) в Школу бэкенд-разработки Яндекса. Я начал описывать все тонкости выбора тех или иных технологий, методику тестирования… Получался совсем не разбор, а очень подробный гайд по тому, как писать бэкенды на Python. От первоначальной идеи остались только требования к сервису, на примере которых удобно разбирать инструменты и технологии. В итоге я очнулся на сотне тысяч символов. Ровно столько потребовалось, чтобы рассмотреть всё в мельчайших подробностях. Итак, программа на следующие 100 килобайт: как строить бэкенд сервиса, начиная от выбора инструментов и заканчивая деплоем.



TL;DR: Вот репка на GitHub с приложением, а кто любит (настоящие) лонгриды — прошу под кат.
Читать дальше →
Total votes 70: ↑68 and ↓2+66
Comments48

AlphaGo Zero совсем на пальцах

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

19 октября 2017 года команда Deepmind опубликовала в Nature статью, краткая суть которой сводится к тому, что их новая модель AlphaGo Zero не только разгромно обыгрывает прошлые версии сети, но ещё и не требует никакого человеческого участия в процессе тренировки. Естественно, это заявление произвело в AI-коммьюнити эффект разорвавшейся бомбы, и всем тут же стало интересно, за счёт чего удалось добиться такого успеха.

По мотивам материалов, находящихся в открытом доступе, Семён sim0nsays записал отличный стрим:


А для тех, кому проще два раза прочитать, чем один раз увидеть, я сейчас попробую объяснить всё это буквами.

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

Ну, поехали.
Читать дальше →
Total votes 65: ↑63 and ↓2+61
Comments52

Мастер-класс «Почему Стив Джобс любил шрифты» (Алексей Каптерев)

Reading time19 min
Views216K


Привет, Хабр! Давно у нас в блоге не было расшифровок мастер-классов. Исправляемся. В этом посте вас ждет грандиозное путешествие в мир шрифтов от древнейших времен до наших дней. Если вы хотите понять, каким образом шрифты влияют на наши эмоции и наконец научиться отличать гуманистический гротеск от ленточной антиквы — добро пожаловать под кат. И да, там очень много картинок. Передаем слово автору.




Шутка, написанная гарнитурой Times, на 10 % смешнее той, что написана гарнитурой Arial. Почему? Чёрт знает. Лучшее объяснение, которое я видел: юмор ассоциируется с агрессией, с остротой, с остроумием — а Times выглядит более острым, чем Arial.


Ещё один любопытный эксперимент, в котором участвовало 45 тыс. человек. Заходишь на сайт, тебе показывают статью Дэвида Дойча, британского физика. В статье автор пишет, что сегодня очень трудно внезапно умереть. Например, от инфекционного заболевания или в уличной драке. Лет сто назад это случалось намного чаще. Главный вывод статьи — сейчас мир безопасен как никогда. В среднем, конечно, ведь где-то постоянно идут локальные военные конфликты.

Total votes 196: ↑194 and ↓2+192
Comments100

Игры, в которых нужно писать код: Grid Garden, Elevator Saga и другие

Reading time3 min
Views137K

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

Total votes 72: ↑72 and ↓0+72
Comments46

Ускорение и оптимизация PHP-сайта. Какие технологии стоит выбирать при настройке сервера под PHP

Reading time7 min
Views55K


Эта статья поможет ответить на вопросы владельцев, разработчиков и системных администраторов PHP-сайтов:



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


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

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

И если говорить о серверах для PHP, то такой проблемой является способ исполнения php кода, ровно как и другие значимые настройки окружения на сервере.
Не зависимо от того, есть ли проблема в вашем коде или её нет, высокая у вас посещаемость или нет, от настроек сервера зависит очень многое. Что бы все сказанное не звучало пустыми словами и была написана эта статья.

В этом обзоре я протестирую только что установленный сайт на одном из самых распространённых движков управления контентом Drupal 7.33.

Для теста выбрана лишь одна составляющая php-хостинга. Мы будем тестировать web-серверы Nginx и Apache2, модули mod_php и php-fpm, версии php php53 и php56, посмотрим, как влияют оптимизаторы apc и opcache на скорость работы сайта.

Читать дальше →
Total votes 29: ↑20 and ↓9+11
Comments59

Быстрый фильтр каталога для интернет-магазинов на основе битмапов Redis

Reading time4 min
Views61K


Не секрет, что каждый интернет-магазин должен помогать пользователям найти то, что им нужно. Особенно, если товаров у вас много (> 10). На помощь приходит каталогизация товаров, но разбить товары по категориям — полдела. Товары внутри категории нужно уметь фильтровать по их свойствам. Особенно, если товары у вас разношёрстные, например, одежда, электроника, ювелирные изделия и т.д. И тут любой разработчик, пишущий свой e-commerce продукт, сталкивается с неприятными реалиями жизни: у товаров могут быть совершенно разные свойства, у некоторых товаров они могут отсутствовать, некоторые товары по одному свойству могут попадать под разные значения (цвет платья то ли синий, то ли голубой, соответственно, неплохо бы его показать и по синему и по голубому цвету). Проще говоря, у вас EAV. Бывает ещё, что EAV вам диагностирует заказчик ближе к концу разработки, а то и просит добавить фильтр по динамическим свойствам уже после релиза.
Читать дальше →
Total votes 38: ↑35 and ↓3+32
Comments75

Расследование одного взлома или как быстро и просто потратить миллиард

Reading time6 min
Views156K
UPDATE: Всем привет! Сегодня с удивлением узнал от коллег об этой записи. Выяснилось, что мой аккаунт взломали — представители Хабрахабра это подтвердили и восстановили мне доступ и сейчас разбираются, как так получилось. Но я оставляю эту запись как есть, для истории.
В комментариях уже отметились представители Яндекса: говорят, что уязвимость закрыта, ведётся аудит безопасности софта.

И, пользуясь случаем, хочу напомнить, что у нас в Badoo уже несколько лет идет программа "Проверь Badoo на прочность" и мы платим за найденные уязвимости.


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

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

Начну с нетехнической части.
Читать дальше →
Total votes 204: ↑188 and ↓16+172
Comments104

Оптимизация картинок для Google PageSpeed

Reading time2 min
Views93K
Нет предела совершенству, и Google PageSpeed тому доказательство. С его помощью меньше чем за минуту можно получить подробный отчет о производительности Web страницы. В подавляющем большинстве случаев PageSpeed подскажет, что нужно оптимизировать графику. Это наиболее частая проблема и наиболее весомая.



Например, даже на стартовой странице Google Developers графику можно сжать на 71%. Чем меньше весят фотки – тем быстрее грузится сайт. Меньше картинки — меньше трафика — все работает быстрее. Посетители тратят меньше времени – все довольны.

В этом материале подобраны основные инструменты для оптимизации графики.
Читать дальше →
Total votes 41: ↑35 and ↓6+29
Comments29

Я тебя по сетям вычислю: используем API крупнейших соцсетей в своих корыстных целях

Reading time11 min
Views175K


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

Есть в американской разведке такая дисциплина, как OSINT (Open source intelligence), которая отвечает за поиск, сбор и выбор информации из общедоступных источников. К одному из крупнейших поставщиков общедоступной информации можно отнести социальные сети. Ведь практически у каждого из нас есть учетка (а у кого-то и не одна) в одной или нескольких соцсетях. Тут мы делимся своими новостями, личными фотографиями, вкусами (например, лайкая что-то или вступая в какую-либо группу), кругом своих знакомств. Причем делаем это по своей доброй воле и практически совершенно не задумываемся о возможных последствиях. На страницах журнала уже не раз рассматривали, как можно с помощью различных уловок вытаскивать из соцсетей интересные данные. Обычно для этого нужно было вручную совершить какие-то манипуляции. Но для успешной разведки логичнее воспользоваться специальными утилитами. Существует несколько open source утилит, позволяющих вытаскивать информацию о пользователях из соцсетей.
Читать дальше →
Total votes 89: ↑83 and ↓6+77
Comments22

RFM-анализ на коленке (Excel)

Reading time4 min
Views40K
Добрый день! Летом 2014 года, работая обычным аналитиком и сильно страдая от прокрастинации, поучаствовал в создании онлайн магазина одежды. Успешно «запилив» для этого проекта систему управленческого учета, обрел в глазах собственника ореол бога аналитики в целом, и Excel'я в частности)) С тех пор собственник, будучи человеком неглупым, хотя и жутко ленивым, привлекал меня для решения всех мало-мальски близких к аналитике задач. Результатом одной из этих задач и хочу поделиться. Под катом мой вариант реализации RFM-анализа. Интересно будет владельцам небольшого B2C бизнеса, не имеющим значительного бюджета на исследования, а также всем интересующимся практическим применением Excel в бизнесе.
Читать дальше →
Total votes 14: ↑13 and ↓1+12
Comments7

Применение RFM-анализа в сегментировании клиентской базы

Reading time5 min
Views57K
Сегментация и таргетинг — это альфа и омега маркетинга, и email-маркетинг — не исключение. Даже если у вас есть накопленная за годы работы клиентская база, веерные рассылки могут принести вам не меньше вреда, чем пользы. Вам нужно уметь отправлять именно те письма, которые будут нужны вашим клиентам и принесут вам необходимые продажи или, например, регистрации на сайте, при этом не заваливая ящики ваших клиентов ненужными сообщениями, которые они бы воспринимали как спам. Для этого необходимо чётко понимать, кому и зачем вы отправляете каждое ваше письмо.



Специально для хабраблога компании Unisender мы подготовили цикл материалов «Таргетинг и сегментация email-рассылок». Во второй статье мы переходим к рассмотрению конкретных методик сегментации и расскажем о применении RFM-анализа в сегментации клиентской базы.

Читать дальше →
Total votes 18: ↑17 and ↓1+16
Comments7

Хороших книг пост

Reading time2 min
Views70K


А давайте давайте соберём здесь хорошие книги, которые просто стоило собрать.
Суть в том, что просто давно стоило сложить хорошие книги в одном посте, чтобы было что прочитать в дороге — или просто для души.
Читать дальше →
Total votes 84: ↑72 and ↓12+60
Comments392

Youtube

Reading time1 min
Views222K
Приходится ждать загрузки видео >360p по несколько секунд, обрывы на середине просмотра стало уже обыденным делом и это с достаточно широким каналом.

image

Причина в занижении провайдерами скорости к серверам кеширующим видео, всё что нужно сделать это заблокировать доступ к ним.

Для того чтобы запрос шел мимо cdn серверов ютуба надо заблокировать диапазон ip адресов (в роутере или на компьютере).

173.194.55.0/24 и 206.111.0.0/16
Читать дальше →
Total votes 205: ↑147 and ↓58+89
Comments179

Возьми Python с собой

Reading time5 min
Views32K
Думали ли вы (в очередной раз подготавливая среду для Python) о том, как было бы здорово, если бы не приходилось настраивать с нуля рабочее окружение (да ещё и под разными операционными системами), а можно было бы сесть и просто начать писать? Я случайно открыл для себя pythonanywhere.com — сервис, позволяющий вести разработку на Python онлайн, прямо в браузере. Под катом — описание сервиса с картинками и видео.
Читать дальше →
Total votes 73: ↑69 and ↓4+65
Comments23

GarageBand — Что может «сочинить» почти дилетант за 8 минут

Reading time1 min
Views76K
Наверное, многие владельцы iPad'ов знают о замечательной музыкальной программе под названием GarageBand (ссылка на AppStore, цена $4.99).

Но почему-то на просторах ютуба видео про нее не так-то много. Собственно, я решил внести свою лепту.

Итак, ниже привожу небольшой ролик, в котором показываю, что может создать дилетант за 8 минут. Владение музыкальными инструментами и нотной грамотой — не обязательно. На видео — результат недолгого копания с программой. Уверен, если провести с ней больше времени, можно написать (почти) полноценное произведение. (Как я понимаю, владельцы маков могут потом «допилить» и почистить результат своих музицированой в garageband'е для маков).

Total votes 208: ↑172 and ↓36+136
Comments155

1000 целевых посетителей с Facebook за 10$

Reading time1 min
Views1.6K
image
Хотелось бы поделиться с вами своим опытом размещения рекламы в Facebook.
Мои затраты на рекламную кампанию с картинки составили всего 10$.
Читать дальше →
Total votes 141: ↑98 and ↓43+55
Comments44

Основы медиапланирования рекламной кампании и анализа семантического ядра в Яндекс.Директ

Reading time4 min
Views6.4K


Недавно к нам пришел очередной рекламодатель. Сфера деятельности — продажа светодиодного оборудования — большие прожекторы и светодиодные ленты для уличного освещения и подсветки зданий и витрин. Соответственно речь идет о B2B, клиенту интересны только крупные заказы в его тематике со стороны строительных организаций, управляющих компаний, сектора ЖКХ и «совсем не интересны те кто хочет купить пару ламп для того чтобы сделать красивое освещение у себя на балконе».

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

Читать дальше →
Total votes 74: ↑65 and ↓9+56
Comments36

Яндекс.Директ. Кавычки против минус-слов или как отделить жемчужины от навоза

Reading time4 min
Views16K

Цель настройки любой рекламной кампании сводится к двум основным стремлениям рекламодателя.
— Четко нацелиться на целевую аудиторию, выжать из нее максимум посетителей себе на сайт (если кто-либо из целевой аудитории, запрашивает ключевое слово – мы должны сделать все, чтобы заполучить его себе на сайт)
— Ни в коем случае не допустить показов нецелевой аудитории (показы этой аудитории понизят драгоценный CTR и повысят стоимость клика, а возможные случайные клики этой аудитории – съедят кусок бюджета)
Для выполнения этих целей Директ предоставляет нам 2 инструмента: Оператор «кавычки» и минус-слова. О них и речь в этой статье.
Читать дальше →
Total votes 54: ↑47 and ↓7+40
Comments14
1
23 ...

Information

Rating
3,133-rd
Location
Россия
Registered
Activity